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

Автор научной работы: Егоров Юрий Борисович

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

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

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

Другая постоянная тенденция развития технологии интегральных схем -уменьшение размеров элементов интегральных схем, увеличение степени интеграции, и, как следствие, рост быстродействия БИС. Минимальный размер компонентов современных серийно выпускаемых БИС достигает 0.15 - 0.2 мкм, а тактовые частоты процессоров превысили 1.5 ГГц.

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

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

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

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

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

Потребности совместного (смешанного) моделирования цифровых и аналоговых компонентов активизировали усилия по разработке языков описания смешанных схем. Если ранее существовали, как бы параллельно, языки описания цифровых схем (VHDL, Verilog) и языки для описания аналоговых систем (AHDL), то совсем недавно (1999 г.) международными сообществами разработаны новые редакции языков -VHDL-AMS , Verilog-AMS, которые предназначены для описания схем и систем с дискретными и непрерывными (аналоговыми) сигналами. Это дает прочную лингвистическую основу для разработки программ смешанного моделирования нового поколения. Средства смешанного моделирования используются довольно давно, но они обычно ограничиваются применением встроенных в программу макромоделей, известных с точностью до параметров. Хорошо известны такие зарубежные и отечественные программы, как SPICE (в поздних модификациях), ЭЛАИС, DIANA, SAMSON, ПА-6,7, АРИС, САМРИС-2,3 и др., в которых предусмотрены возможности использования встроенных, как правило, логико-электрических, макромоделей. Языки YHDL-AMS и Verilog-AMS позволяют, в пользователю самому конструировать макромодели, в том числе, для аналоговых и смешанных компонентов, причем аналоговые модели могут конструироваться в виде достаточно произвольных систем алгебраических, дифференциальных и интегральных уравнений. Это обстоятельство существенно влияет на методы и алгоритмы программы моделирования, что и явилось одним из главных мотивов данной работы.

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

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

Состояние проблемы

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

Однако встроенные макромодели имеют существенный недостаток - при необходимости использования макромодели устройства, которого нет в библиотеке программы моделирования, нужно не только разработать математическую модель, но и написать соответствующий модуль на языке программирования и "встроить" его в программу моделирования. Понятно, что это совершенно неприемлемый путь, если вы используете коммерческую программу моделирования. Это обстоятельство послужило стимулом для создания специальных языков описания макромоделей аналоговых устройств. Наиболее известны языки – MAST, HDL-A, SpectreHDL . Соответственно коммерческие программы моделирования стали снабжаться средствами компиляции моделей, записанных на HDL.

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

Важным стимулом развития языков описания аппаратуры, таких как VHDL и Verilog, явилось разработка и использование методов иерархического проектирования БИС и широкое использование при разработке библиотек блоков БИС. Методы иерархического проектирования основаны на возможности представления БИС на различных уровнях абстракции, начиная от высокоуровнего (поведенческого) описания схемы и вплоть до физического уровня ее представления. На рис. 0.1 показана схема проектирования "сверху - вниз" аналоговой микросхемы. Эта методология предполагает, что каждый функциональный блок описывается на поведенческом уровне, используя HDL. Это дает возможность моделирования, как отдельных блоков, так и всей схемы целиком с приемлемыми затратами машинного времени. По результатам моделирования разработчик схемы может проверить соответствие ее параметров исходным функциональным спецификациям. Спецификации для всей БИС обычно задаются разработчиком системы, а спецификации на отдельные функциональные блоки определяются на стадии проектирования микросхемы. При разработке этих спецификаций проектировщик БИС опирается обычно на свой опыт и интуицию. Это одна из причин низкой эффективности труда при проектировании аналоговых ИС. После того как все блоки схемы спроектированы, а вся схема не работает, часто приходится заново перепроектировать все блоки схемы.

Методология проектирования "сверху - вниз" базируется на возможностях HDL. Сначала разработчик описывает все функциональные блоки схемы на HDL и моделирует всю схему целиком. В процессе проектирования разрабатываются детальные описания блоков вплоть до уровня элементов (транзисторов, резисторов и т.д.).

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

Естественно, что такая методология проектирования с необходимостью требует как наличия лингвистических средств описания моделей, так и развитого инструментария для их создания и применения. Если еще несколько лет назад существовали практически независимо языки описания цифровых устройств и языки описания аналоговых моделей, то с развитием тенденции создания на одном кристалле смешанных цифро-аналоговых
Блок-схема
Entity Tuner is
Generic (gain : real
Finp: rea

Электрическая схема систем такая ситуация стала тормозить внедрение иерархических методов проектирования, а также разработку и применение библиотек аналоговых и смешанных блоков. Следствием этого явились усилия международных сообществ по разработке языков, позволяющих описывать модели смешанных устройств. Так в 1999 году была завершена работа над новой редакцией языка VHDL - IEEE Std 1076.1-1999, получившей название VHDL-AMS (Analog & Mixed Signals). Продолжается работа над языком Verilog-AMS, который также используется в наиболее распространенных САПР Cadence и Mentor Grapfics . Язык VHDL-AMS, сохранив все свои богатейшие возможности описания цифровых устройств, пополнился возможностями включать в описание модели устройства весьма произвольные системы алгебраических, дифференциальных и интегральных уравнений, а также возможностями преобразования аналоговых переменных в цифровые и влияния цифровых сигналов на аналоговые переменные. Язык позволяет описывать модели аналоговых устройств на поведенческом и электрическом уровнях. Более того, с его помощью можно описывать модели динамических консервативных систем любой физической природы (гидравлических, термических и т.п.). Естественно, такие возможности языка порождают проблемы его реализации. Модель, описанная на языке VHDL-AMS, должна быть автоматически преобразована в программный модуль, загружаемый в программу смешанного моделирования. Сложность этого процесса заключается в том, что такая модель должна не просто определять значения выходных переменных по заданным значениям входных переменных, но вычислять выходные переменные как решения алгебро-дифференциальных систем, возможно с разрывными коэффициентами, и вычислять производные от входных переменных по входным, обеспечивая блок аналогового моделирования необходимыми коэффициентами матрицы Якоби.

Другая проблема, постоянно возникающая при использовании макромоделей, - это трудность разработки самих макромоделей. Процесс их разработки включает в себя "изобретение" математической модели, запись ее на языке, тестирование и настройку параметров. Каждый из перечисленных этапов требует значительных усилий и высокой квалификации разработчика. Без специальных инструментальных средств разработки построение макромодели может потребовать столь значительных затрат, что само их применение может оказаться нецелесообразным. Для разработки макромоделей цифровых элементов БИС созданы программные средства, позволяющие автоматизировать все этапы формирования макромоделей, например. Значительно хуже обстоит дело с инструментарием для автоматизированной разработки аналоговых моделей. Основная причина такого положения - огромное разнообразие функций и параметров аналоговых устройств. Задача автоматического формирования макромоделей аналоговых схем, исходя из полной структурной модели схемы, в настоящее время может быть решена только для узкого класса схем, в основном, для линейных пассивных схем. В последнее время интенсивно развиваются методы автоматического создания макромоделей, базирующиеся на методах символического анализа . Правда, реальные достижения в этом направлении относятся также к классу аналоговых линейных схем. Интенсивно развиваются также методы автоматического формирования моделей линейных динамических систем с периодическими коэффициентами, которые находят применение при моделировании некоторых типов радиотехнических схем . В предложен метод синтеза макромоделей для фрагментов БИС по их полным математическим моделям, как для линейных, так и для нелинейных схем. Этот метод требует большого объема предварительной работы по исследованию полной модели, накопления, хранения и обработки больших массивов данных и плохо согласуется с идеологией современных языков описания макромоделей. В общем же случае задача создания математической модели аналогового или смешанного устройства решается разработчиком на основе его опыта и интуиции. Значительную помощь при этом может оказать графический язык эквивалентных схем. Так, в предложены принципы создания программы, которая позволяет изобразить эквивалентную схему макромодели, а затем автоматически преобразовать ее в запись на языке НБЬ-А. Такой подход имеет значительные преимущества: во-первых, разработчик макромодели использует привычные для него элементы электронных схем вместо абстрактных конструкций языка, во-вторых, автоматически соблюдается консервативность модели (т.е. законы Кирхгофа), и, наконец, от разработчика не требуется выполнять чреватую ошибками запись модели на формальном языке - это за него выполняет программа. В введены классы графических символов для построения эквивалентных схем и сформулированы (правда, весьма поверхностно) принципы автоматической генерации ЬГОЬ-А-кода для программы ЕЫ)ОРА8 . Так как эта работа появилась раньше, чем был разработан язык УНБЬ-АМ8, то в ней отсутствуют средства для обеспечения взаимодействия аналоговых и цифровых сигналов. Однако сам подход к автоматизации разработки аналоговых макромоделей представляется перспективным.

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

Использование макромоделей с аналоговыми (непрерывными) и цифровыми (дискретными) переменными требует применения специальных методов моделирования схем, получивших название методов смешанного моделирования. Эти методы развиты в работах отечественных и зарубежных авторов. Для определения значений аналоговых переменных используются методы численного интегрирования дифференциальных уравнений, а для определения цифровых переменных - аппарат булевых функций и событийное моделирование. Основная проблема смешанного моделирования - это обеспечение временной синхронизации двух процессов решения с учетом их взаимного влияния. Известны несколько возможных подходов к решению этой проблемы. В первых программах смешанного моделирования, которые обычно строились как объединение уже имеющихся программ электрического и логического моделирования, использовался алгоритм жесткой синхронизации шагов ("Lock-step") и алгоритм фиксированного временного шага ("Fixed-step"). Алгоритм "Lock-step" основан на том, что любой временной шаг интегрирования аналоговой части схемы ограничен временем ближайшего цифрового события, и, наоборот, после каждого шага интегрирования управление передается цифровой части симулятора. Этот алгоритм ведет к излишнему объему вычислений. Алгоритм "Fixed-step" использует просто фиксированную сетку временных шагов, что снижает точность моделирования. Более эффективным является так называемый "Ping-Pong"- алгоритм. Суть его состоит в том, что синхронизация аналогового и цифрового процессов выполняется лишь тогда, когда нужно произвести обмен данными между этими процессами. Все остальное время процессы работают независимо, каждый со своим оптимальным временным шагом. Естественно, что при этом возникают ситуации, когда один процесс опережает другой, и возможны коллизии, требующие "отката" назад. При этом, если аналоговый симулятор достаточно откатить только на один шаг назад, то в цифровой части может потребоваться восстановить целую цепочку совершенных событий. Это требует значительных усилий для создания соответствующего механизма отката. Более совершенным является патентованный фирмой Analogy Inc. алгоритм Калавераса, который используется в программе Saber. Главное его отличие от "Ping-Pong''-алгоритма заключается в том, что аналоговый процесс всегда опережает цифровой, и определяются точные значения времени, при которых аналоговые переменные пересекают пороговые значения, что ведет к изменению цифровых переменных. Таким образом, никогда не требуется откатывать назад цифровой процесс, а откат аналогового выполняется не более чем на один временной шаг, что, впрочем, всегда предусматривается в аналоговых симуляторах.

Конечно, появление столь мощного языка, как VHDL-AMS, породило много других проблем при разработке программы смешанного моделирования. К ним можно отнести возможность глубокой (в принципе, бесконечной) иерархии макромоделей, наличие не только разрывных коэффициентов дифференциальных уравнений, но и возможность изменения состава системы уравнений из-за наличия операторов ifjise и caseuse в аналоговой части макромодели, возможность использования переменных различной физической природы, а, следовательно, и различных диапазонов допустимых значений переменных. В настоящее время известна лишь одна коммерческая программа смешанного моделирования, в которой можно использовать VHDL-AMS-модели, - это программа AD Vance MS фирмы Mentor Graphics (дальнейшее развитие программы ELDO-FAS). В условиях жесткой конкуренции на рынке программных продуктов сложилась практика, когда детали реализации наиболее успешных программ не раскрываются в открытых публикациях. Обычно фирмы ограничиваются декларациями рекламного характера. Это, в частности, относится и к программе AD Vance MS.

Использование макромоделей, конечно, нельзя рассматривать как панацею, решающую все проблемы моделирования БИС. Естественно, что точность макромодели всегда ниже, чем точность исходной модели, и, что самое главное, макромодель адекватно отражает только те аспекты поведения реальной схемы, которые предусмотрены при разработке макромодели. Кроме того, макромодель, как правило, теряет связь с исходными параметрами элементов схемы, что делает ее непригодной для оптимизации проекта. На заключительных этапах проектирования фирмы-разработчики БИС в обязательном порядке включают в маршрут проектирования моделирование схемы с использованием моделей максимально возможной точности, затрачивая на это сотни часов работы быстродействующих компьютеров. Поэтому всегда актуальной остается проблема снижения вычислительных затрат электрического моделирования. Этой проблеме посвящено большое число работ отечественных и зарубежных авторов. Основные направления снижения вычислительных затрат при моделировании электрических схем - это совершенствование методов интегрирования, применение эффективных методов решения больших систем линейных уравнений, использование методов диакоптики, снижение вычислительных затрат на расчет моделей элементов (транзисторов). В развитии первых двух направлений значительные успехи были достигнуты в 70-80-е годы, и в последнее время существенных сдвигов в этих направлениях не наблюдается. Сложился определенный набор методов, который используется во всех наиболее успешных программах анализа электрических схем. Это формирование уравнений состояния схемы на основе модифицированного метода узловых потенциалов, использование для интегрирования полученной системы неявного метода интегрирования с переменным шагом, решение нелинейной алгебраической системы методом Ньютона, применение техники разреженных матриц для решения системы линейных уравнений. Этот набор методов лежит в основе многих отечественных и зарубежных программ третьего поколения - ПА-х, САМРИС-х, ЭЛАИС, АРИС, Spice, Напротив, методы диакоптики ( в самых различных трактовках этого понятия ) успешно развиваются в последние два десятилетия. Мощным толчком для их развития послужило то, что господствующее положение заняла КМОП-технология. Цифровые КМОП-схемы обладают рядом специфических свойств, правильное использование которых при моделировании позволяет на порядки уменьшить вычислительные затраты. К этим свойствам относятся:
• наличие диагонального преобладания в матрице Якоби системы уравнений, составленной по методу узловых потенциалов;
• возможность разбиения схемы на отдельные подсхемы, не связанные друг с другом по постоянному току (кроме, конечно, связей по цепям питания);
• наличие ярко выраженной временной латентности ( в каждый момент времени только в небольшой части цифровой БИС происходит изменение потенциалов).

Наличие диагонального преобладания позволяет использовать итерационные методы для решения системы линейных уравнений или методы типа Зайделя-Ньютона для решения системы нелинейных уравнений. Использование этого свойства в программах позволило на порядок ускорить моделирование КМОП-схем.

Возможность декомпозиции схемы на отдельные подсхемы, не связанные по постоянному току, породила целый класс так называемых релаксационных методов, суть которых состоит в том, что итерации Зейделя применяются непосредственно к системе дифференциальных уравнений, а не к алгебраическим системам, возникающим после дискретизации производных. Этот подход особенно успешно сочетается с использованием свойства временной латентности. Но широкого применения в коммерческих программах этот метод так и не получил. Видимо, главная причина этого состоит в том, что метод требует запоминания в ходе решения большого объема данных, что ограничивает его применение для расчета сверхбольших схем. Более успешным оказалось применение принципов событийного моделирования. Событием в этом случае ( в отличие от событий при логическом моделировании) считается факт изменения любого потенциала в отдельной подсхеме на заданную величину. Интегрирование уравнений каждой подсхемы выполняется со своим шагом интегрирования, что автоматически учитывает свойство латентности. Эти принципы положены в основу программ PowerMill, TimeMill, NanoSim фирмы Synopsys. Эти программы достигли ускорения моделирования КМОП-схем на 2 - 3 порядка по сравнению со Spice. Конечно, по уже упоминавшейся причине детали их алгоритмов не раскрываются.

Последнее направление повышения эффективности программ моделирования -снижение вычислительных затрат на расчет моделей элементов - связано, прежде всего, с использованием табличных моделей элементов. Начало этому направлению положили работы Катцнельсона, который предложил использовать кусочно-линейные аппроксимации вольт-амперных характеристик и развил методы решения кусочно-линейных алгебраических систем. Дальнейшее развитие метод получил в работах, где был распространен и на решение систем дифференциальных уравнений. Кроме непосредственного сокращения затрат на обработку моделей, метод кусочно-линейной аппроксимации позволял получить системы уравнений с особыми свойствами, использование которых значительно сокращало общие вычислительные затраты. Метод был успешно применен в программе САМРИС-2, ориентированной на расчет биполярных схем. В дальнейшем, с ростом требований к точности моделирования, модели компонентов усложнялись, и кусочно-линейная аппроксимация была вытеснена более общим подходом - табличными моделями [63]. Современные модели МОП-транзисторов настолько сложны, что использование всех вышеупомянутых методов сокращения вычислительных затрат приводит к тому, что на расчет моделей программа тратит до 90% времени. Естественно, что дальнейшее ускорение возможно только при условии упрощения моделей, но без существенной потери точности. Табличный подход, в принципе, позволяет решить эту проблему, так как любые функциональные зависимости можно воспроизвести по таблицам с заранее заданной точностью. Главными ограничениями при этом являются объем таблиц и время на их подготовку, причем с быстрым развитием вычислительной техники возможности табличного подхода постоянно расширяются. В упоминавшихся уже программах PowerMill и TimeMill также используются табличные модели, что в совокупности с остальными методами, позволило достичь столь высокой производительности. Правда, заявленная точность моделирования (10%) выдерживается только для схем с "классической" КМОП-технологией. Для схем с проходными транзисторами точность этой программы значительно хуже, а схемы, изготовленные по SOI-технологии ("кремний на изоляторе"), эта программа вообще не может моделировать.

Методы параметрической оптимизации интегральных схем появились почти одновременно с методами анализа, и некоторое время рассматривались как один из важнейших инструментов проектирования. Но очень быстро их использование встретилось со значительными трудностями, обусловленными ростом степени интеграции ИС. Затраты на моделирование схем стали столь значительными, что практически оптимизировать можно было лишь небольшие фрагменты схем. Но если и существует возможность анализировать схему "по частям", то оптимизировать ее "по частям", как правило, нельзя, так как обычно неизвестны оптимальные значения ограничений для фрагментов схемы. Эффективный метод оптимизации ЭСЛ-схем был предложен в. Метод основывался на так называемых энергетических характеристиках ЭСЛ-вентилей в предположении, что каждый вентиль имеет единственный варьируемый параметр. В автором был предложен метод декомпозиции, который позволил, при некоторых допущениях, свести задачу оптимизации большой схемы к последовательности задач оптимизации ее фрагментов. Этот метод является обобщением метода энергетических характеристик на более общий класс задач проектирования. Он был реализован в программе САМРИС-3 и применялся для оптимизации некоторых классов цифровых ИС, в частности, биполярных схем памяти.

Начиная с 80-х годов, господствующим способом проектирования цифровых БИС стало использование библиотек стандартных ячеек, что сразу снизило интерес к методам параметрической оптимизации. Напротив, интенсивно стали развиваться методы структурной оптимизации БИС, основанные на применении эквивалентных логических преобразований, ведущих к улучшению качественных показателей схемы. Особое значение приобрели методы снижения потребляемой мощности. Развитие этих направлений тесно связано и с разработкой новых методов анализа для оценки быстродействия и потребляемой мощности. Для КМОП-схем разработаны специальные методы временного анализа, позволяющие быстро и с хорошей точностью определить задержки сигналов в схеме, и вероятностные методы оценки потребляемой мощности. Современные системы проектирования, такие как Cadence и Mentor Graphics, позволяют разработчику проектировать схемы не только из библиотечных ячеек с фиксированными размерами элементов, но оперативно изменять размеры транзисторов, используя параметризованные библиотеки ячеек. Таким образом, наличие развитого аппарата для быстрого анализа в совокупности с возможностью управления размерами элементов вновь пробуждает интерес к методам параметрической оптимизации. Из последних работ этого направления можно выделить. Один из наиболее простых и вместе с тем надежных подходов к задаче параметрической оптимизации заказных КМОП-схем реализован в известном алгоритме TILOS. В этой работе показано, что при некоторых упрощающих предположениях задержка, мощность и площадь КМОП-схемы являются выпуклыми функциями размеров транзисторов (функциями специального вида - так называемыми позиномами). Выпуклость целевой функции и ограничений гарантирует то, что локальный минимум в задаче оптимизации является одновременно и глобальным минимумом. Это позволяет построить простой алгоритм оптимизации, основанный на итерационном нахождении транзистора, к размеру которого целевая функция и ограничения наиболее чувствительны на данном шаге, и целенаправленном изменении этого размера. Дальнейшее развитие этого подхода, связанное с использованием более реалистических моделей, а также методов выпуклой оптимизации, можно найти в работе. Известны и другие работы, использующие аналитические модели для мощности и задержек, а также непрерывное изменение размеров транзисторов . Задача параметрической оптимизации для схем, разработанных на основе библиотек параметризованных ячеек, была исследована в работах .

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

Список литературы:

1. Ильин В.Н Машинное проектирование электронных схем. - М.: Энергия, 1972. -280 с.

2. Маничев В.Б., Норенков И.П., Хартов В.Я. Макромодели функциональных узлов цифровых устройств. В сб. "Машинные методы проектирования электронных схем". М., Знание, 1975, с. 73-78.

3. Анисимов Б.Г., Белов Б.И., Норенков И.П. Машинный расчет элементов ЭВМ. -М.: Высшая школа, 1976. 336 с.

4. Норенков И.П., Мулярчик С.Г., Иванов С.Р. Экстремальные задачи при схемотехническом проектировании в электронике. Минск: Белорус, гос. ун-т., 1976.-240 с.

5. Гурарий М.М., Русаков С.Г. Синтез макромоделей фрагментов БИС методом возмущений. Микроэлектроника, 1977, т. 6, №5, с. 406 - 409.

6. Гурарий М.М., Русаков С.Г. Машинный расчет сложных электронных систем методом подсхем. Изв. АН СССР. Техническая кибернетика, 1977, № 1, с. 193 — 197.