УДК 621.372 ИНТЕЛЛЕКТУАЛЬНЫЕ СИСТЕМЫ СХЕМОТЕХНИЧЕСКОГО ПРОЕКТИРОВАНИЯ* Л.А.Зинченко1 В докладе рассматриваются основные подходы к построению интеллектуальных систем схемотехнического проектирования. Проводится сравнение эффективности различных подходов. Показано, что системы, основанные на эволюционных вычислениях, являются наиболее эффективными, как при решении задачи параметрической оптимизации, так и при творческом проектировании. Введение Современный рынок интегральных схем характеризуется постоянным увеличением количества транзисторов на одном кристалле. Использование субмикронных технологий приводит к постоянному усложнению правил проектирования, которые зачастую являются многокритериальными, что ведет к неизбежному увеличению стоимости проектирования и времени проектирования. В тоже время для достижения конкурентоспособности изделий эти характеристики необходимо уменьшать. Для преодоления перечисленных выше противоречивых требований необходима разработка высокоэффективных систем автоматизированного проектирования интегральных схем. Анализ литературных источников позволяет сделать вывод, что в настоящее время разрабатываются различные подходы к решению этой проблемы. В докладе анализируются только подходы, основанные на применении методов искусственного интеллекта. В настоящее время в области интеллектуальных систем схемотехнического проектирования можно выделить 3 основные подхода: - системы на основе продукционных баз знаний; - системы на основе использования мягких вычислений для решения задач параметрической оптимизации и топологического синтеза; - комбинация перечисленных выше подходов. Работа выполнена при финансовой подержке РФФИ (проект № 04-01-00174) 347928, Таганрог, пер. Некрасовский 44, ТРТУ, lyudmila.zinchenko@ais.fraunhofer.de * 1 Необходимо заметить, что все коммерческие интеллектуальные системы схемотехнического проектирования базируются в основном на принципах мягких вычислений. 1. Основные подходы к построению интеллектуальных систем схемотехнического проектирования 1.1. Автоматизированные системы схемотехнического проектирования, основанные на базах знаний Системы, основанные на экспертных базах знаний продукционного типа, были одними из первых разработок в области автоматизации схемотехнического проектирования. Типичными примерами являются системы BLADES [El-Turkey et al, 1989] и OASYS [Harjani et al, 1989]. Для проектирования они используют знания экспертов. Проектирование допускается только для определенных схемотехнических решений. Дальнейшее развитие этот подход получил на основе использования для выбора возможных вариантов решений методов интервального анализа [Veselinovic et al, 1995], иерархических методов [Iskander et al, 2004], нечеткой логики [Torralba et al, 1996]. Подход [Stefanovic, 2003], развиваемый в Федеральном технологическом университете Лозанны (EFPL), базируется на принципах построения систем поддержки принятия решений. На рис. 1 показана обобщенная структурная схема автоматизированных систем схемотехнического проектирования, основанных на базах знаний. Существенным недостатком всех перечисленных выше систем является сложность адаптации системы к новым технологиям и топологиям. Системы оказываются неспособными решать задачу проектирования даже при незначительных изменениях в постановке задачи. Большие временные затраты требуются для настройки систем, что сдерживает их коммерческое применение. 1.2. Автоматизированные системы параметрической оптимизации в схемотехническом проектировании Интеллектуальные системы параметрической оптимизации схемотехнического решения при заданной топологии базируются на использовании генетических алгоритмов [Krasnicki et al, 1999] и моделирования отжига [Ochotta et al, 1996; Gielen et al, 1990; Krasniski et al, 2001; De Ranter et al, 2002; Vancoreland et al, 2000]. Они отличаются классами цепей, для которых они применяются: радиотехнические усилители [Vancoreland et al, 2000], операционные усилители [Krasnicki et al, 1999], генераторы [De Ranter et al, 2002]. Обобщенная структурная Рис. 1. Обобщенная структурная схема автоматизированных систем схемотехнического проектирования, основанных на знаниях схема автоматизированных систем параметрической оптимизации в схемотехническом проектировании показана на рис. 2. Указанные выше системы используют различные подходы при определении наилучшего решения: аналитические модели [Gielen et al, 1990] или численное моделирование, например, с использованием программы SPICE [Krasnicki et al, 1999]. Однако точность аналитических моделей является допустимой только в режиме малого сигнала. Численное моделирование требует больших вычислительных затрат. Поэтому перспективным представляется подход, основанный на использовании численно-аналитических моделей, предложенный в работе [Курейчик и др, 2002]. Структура автоматизированной системы параметрической оптимизации, предложенная в [Krasnicki et al, 1999], получила коммерческое применение в промышленности. Система NeoCircuit [Cadence, 2006], разработанная компанией Neolinear Inc. (в настоящее время поглощенной компанией Cadence), базируется на основных идеях [Krasnicki et al, 1999]. Другая коммерческая система AMS Genius [Synopsys, 2006] (разработка компании Analog Design Automation, в настоящее время поглощенной компанией Synopsys), также базирующаяся на использовании принципов искусственного интеллекта, поддерживает многокритериальную оптимизацию. Вне зависимости от выбранного подхода к выбору лучшего решения все перечисленные выше системы, включая коммерческие, могут работать только при задании первоначального решения, топологию которого они изменить не могут. 1.3. Комбинационные подходы к построению интеллектуальных систем автоматизированного схемотехнического проектирования Более эффективные автоматизированные системы схемотехнического проектирования были разработаны при комбинации методов Рис. 2. Обобщенная структурная схема автоматизированных систем параметрической оптимизации в схемотехническом проектировании искусственного интеллекта и параметрической оптимизации. Подобный подход позволил обеспечить больше гибкости при поиске решения. Система AMIGO [Iskander et al, 2003] основана на применении классических генетических алгоритмов для оптимизации параметров цепи при наличии экспертных ограничений на возможный диапазон допустимых решений. Система AMGIE [Van der Plas et al, 2001] базируется на иерархическом принципе проектирования, для поддержки которого используются базы знаний и классические оптимизационные алгоритмы. Система OPASYN [Koh et al, 1990] основана на использовании дерева решений для выбора наилучшей топологии схемы на основе экспертных знаний. Для выбора параметров схемы используются также классические оптимизационные алгоритмы. Иерархический подход к построению решений на основе выбранных подсхем и оптимизация параметров схемы на основе моделирования отжига были использованы в [Ning et al, 1991]. Интересным представляется подход, использованный в системе DARWIN [Kruiskamp, 1995]. Генетические алгоритмы были использованы для поиска лучшего решения из заранее выбранных 24 допустимых решений. Генетическая оптимизация параметров схемы с учетом экспертных знаний о допустимом дисбалансе в параметрах [Balkir et al, 2004] позволила повысить выход годных интегральных схем. Для оптимизации параметров схемы [Balkir et al, 2004] был разработан новый алгоритм, представляющий собой комбинацию эволюционных стратегий и метода моделирования отжига. 1.4. Системы творческого схемотехнического проектирования Наиболее перспективным направлением в разработке интеллектуальных систем автоматизированного схемотехнического проектирования представляются подходы, позволяющие найти новые схемные решения [Зинченко и др., 2003]. В основном, значительные результаты были получены при использовании генетического программирования [Koza et al, 1997; Sripramong et al, 2002; Vieira et al, 2004] и генетических алгоритмов [Lohn et, 1999a; Goh et al, 2001; Grimbleby, 2000; Shuguang et al, 2005; Mattiussi et al, 2004; Dastidar et al, 2005; Ando et al, 2000]. Обобщенная структурная схема систем творческого схемотехнического проектирования, основанных на использовании алгоритмов генетического программирования, показана на рис. 3, а. Рис. 3, б иллюстрирует основные этапы творческого схемотехнического проектирования при использовании генетических алгоритмов. Системы творческого схемотехнического проектирования, основанные на алгоритмах генетического программирования [Koza et al, 1997], базируются на использовании процедуры эволюционного развития эмбриона в цепь, удовлетворяющую заданным техническим характеристикам, на основе иерархической древовидной структуры. В процессе эволюционного развития возможна генерация любой топологии и любых параметров схемы. Основной проблемой при использовании алгоритмов генетического программирования является генерация большого количества схемных решений, не имеющих никакого физического смысла [Sripramong et al, 2002]. В связи с этим основные усилия исследователей направлены на разработку специальных правил, позволяющих устранить этот недостаток. В зависимости от выбранного маршрута проектирования они могут применяться на этапе верификации полученных проектных решений [Sripramong et al, 2002] или на этапе генерации схемы [Vieira et al, 2004]. Отличительной особенностью генетических алгоритмов является использование закодированных решений в процессе эволюционной адаптации. В связи с этим основные усилия исследователей, использующих генетические алгоритмы, направлены на разработку эффективных методов кодирования схемотехнического решения. Наиболее часто используется представление генотипа в виде линейной последовательности [Ando et al, 2000; Zebulum et al, 2003]. Его достоинством является возможность применения для цепей с различным количеством элементов произвольной топологии. Матричное представление, предложенное Kitamura et al [Ando et al, 2000], требует заранее предопределенного размера цепи. В работе [Dastidar et al, 2005] предложено использование генотипа, каждый ген а б Рис. 3. Обобщенная структурная схема систем творческого схемотехнического проектирования, основанных на генетическом программировании (а) и генетических алгоритмах (б) которого соответствует одной из заранее выбранных подсхем с экспертными правилами допустимых типов соединений. Ввод зависимостей между генотипами в [Mattiussi et al, 2004] позволил уменьшить длину хромосомы. Использование динамического кодирования в [Muehlenbein et al, 2002a] позволило уменьшить временные затраты на поиск решения. Перспективным также представляется использование эволюционных вероятностных алгоритмов [Muehlenbein et al, 2002b]. Модели распределения [Muehlenbein et al, 2002b] в состоянии накапливать информацию о допустимых проектных решениях, что позволяет локализовать поиск в перспективных областях и сократить тем самым вычислительные затраты. Эффективность системы проектирования во многом определяется выбранной функцией пригодности. В основном в исследованиях по творческому схемотехническому проектированию используются линейные функции пригодности, представляющие собой взвешенную сумму различных параметров. Они применяются как в системах творческого схемотехнического проектирования, основанных на алгоритмах генетического программирования [Koza et al, 1997], так и в системах творческого схемотехнического проектирования, базирующихся на генетических алгоритмах [Lohn et, 1999a]. В работе [Lohn et al, 1999b] исследованы динамические функции пригодности. Однако генетические алгоритмы плохо адаптировались к изменяющимся поверхностям функций пригодности. Более перспективным представляются подходы, предложенные в работах [Sripramong et al, 2002; Ando et al, 2000]. Для повышения эффективности проектирования в работе [Sripramong et al, 2002] все проектные требования разделены на две большие группы: ограничения, которые необходимо выполнить, и ограничения, которые желательно выполнить (мягкие ограничения). Ввод такой классификации проектных требований позволил выделить обязательный набор проектных требований (жесткие ограничения). В ходе эволюционного процесса в первую очередь отбираются альтернативные решения, удовлетворяющие жестким ограничениям. На втором этапе селекции из полученного множества альтернативных решений выбираются индивиды, наилучшим образом удовлетворяющие мягким ограничениям. В работе [Ando et al, 2000] предложена методика изменения весовых коэффициентов в зависимости от размера цепи. Она позволяет отбирать более эффективные с точки зрения размеров кристалла схемотехнические решения. 2. Заключение В настоящее время коммерческие системы автоматизированного схемотехнического проектирования активно используют методы искусственного интеллекта для оптимизации проектных решений. Однако только системы, основанные на эволюционных вычислениях, позволяют выполнить все этапы схемотехнического проектирования в автоматическом режиме. Эволюционные вычисления позволяют также обеспечить более эффективный выбор параметров схемы по сравнению с методом Монте-Карло [Rogenmoser et al, 1996]. Таким образом, применение эволюционных вычислений в автоматизированных системах схемотехнического проектирования представляется наиболее перспективным. Разработанные в последние годы эффективные алгоритмы генетического поиска, в частности, многоальтернативные генетические алгоритмы [Курейчик и др, 2003; Зинченко и др., 2003] обеспечивают нахождение проектного решения при минимальных вычислительных затратах. Список литературы [Зинченко и др., 2003] Зинченко Л.А., Сорокин С.Н. Эволюционное проектирование элементов телекоммуникационных систем. – ТРТУ, 2003. [Курейчик и др., 2002] Курейчик В.М., Зинченко Л.А., Гулевич А.И. Эволюционное проектирование с использованием численно-аналитических моделей // Электромеханика. 2002. №1. [Курейчик и др., 2003] Курейчик В.М., Зинченко Л.А. Многоальтернативные генетические алгоритмы поиска экстремума функции // Известия РАН. Теория и системы управления. 2003. №4. [Ando et al, 2000] Ando S., Iba H. Analog Circuit Design with a Variable Length Chromosome. // Proc. Congr. Evol. Comput. 2000. [Balkir et al, 2004] Balkir S., Dündar G., Alpaydin G. Evolution based synthesis of analog integrated circuits and systems // Proceedings EH’04. 2004. [Cadence, 2006] http://www.cadence.com/products/custom_ic/neocircuit/index.aspx [Dastidar et al, 2005] Dastidar T.R., Chakrabarti P.P., Ray P. A Synthesis System for Analog Circuits Based on Evolutionary Search and Topological Reuse // IEEE Trans. Evol. Comput., 2005. №9(2). [De Ranter et al, 2002] De Ranter C. R. C., Van der Plas G., Steyaert M. S. J., Gielen G. G. E., Sansen W. M. C. CYCLONE: automated design and layout of RF LCoscillators // IEEE Trans. CAD, 2002. №21(10). [El-Turkey et al, 1989] El-Turkey F. and Perry E. E. BLADES: An artificial intelligence approach to analog circuit design. // IEEE Trans. CAD, 1989. № 8(6). [Gielen et al, 1990] Gielen G. G. E., Walscharts H. C. C., and Sansen W. M. C., Analog circuit design optimization based on symbolic simulation and simulated annealing. // IEEE J. Solid-State Circuits, 1990. №25 (3). [Goh et al, 2001] Goh C. and Li Y. GA automated design and synthesis of analog circuits with practical constraints // Proc. Congr. Evol. Comput. 2001. [Grimbleby, 2000] Grimbleby J. B. Automatic analogue circuit synthesis using genetic algorithms // Proc. Inst. Elect. Eng. Circuits, Devices, Syst. 2000. [Harjani et al, 1989] Harjani R., Rutenbar R. A., and Carley L. R. OASYS: A framework for analog circuit synthesis. // IEEE Trans. CAD, 1989. №8(12). [Iskander et al, 2003] Iskander R., Dessouky M., Aly M., Magdy M., Hassan N., Soliman N., Moussa S. Synthesis of CMOS Analog Cells using AMIGO // Design Automation and Test in Europe (DATE'03). 2003. [Iskander et al, 2004] Iskander R., de Lamarre L., Kaiser A., Louerat M.-M. Design Space Exploration for Analog IPs using CAIRO+. // Proc. ICEEC’04. 2004. [Koh et al, 1990] Koh H. Y., Sequin C. H., and Gray P. R. OPASYN: A compiler for CMOS operational amplifiers. // IEEE Trans. CAD, 1990. №9(2). [Koza et al, 1997] Koza J. R., Bennett III F. H., Andre D., Keane A., Dunlap F. Automated synthesis of analog electrical circuits by means of genetic programming // IEEE Trans. Evol. Comput., 1997. №1(2). [Krasnicki et al, 1999] Krasnicki M., Phelps R., Rutenbar R. A., and Carley L. R. MAELSTROM: An efficient simulation based synthesis for custom analog cells // Proc. 36th Design Autom. Conf. 1999. [Krasnicki et al, 2001] Krasnicki M.J. et al. ASF: a practical simulation-based methodology for the synthesis of custom analog circuits // Proc. ICCAD. 2001. [Kruiskamp et al, 1995] Kruiskamp W.and Leenaerts D. Darwin: CMOS opamp synthesis by means of a genetic algorithm. // Proc. 36th Design Autom. Conf. 1995. [Lohn et al, 1999a] Lohn J. D.,. Colombano S. P. A circuit representation technique for automated circuit design // IEEE Trans. Evol. Comput., 1999. №3(3). [Lohn et al, 1999b] Lohn J. et al. A Comparison of Dynamic Fitness Schedules for Evolutionary Design of Amplifiers. Proc. EH’99. 1999. [Mattiussi et al, 2004] Mattiussi C., Floreano D. Evolution of analog networks using local string alignment on highly reorganizable genomes // Proc. EH’04. 2004. [Muehlenbein et al, 2002a] Muehlenbein H., Kureichik V.M., Mahnig T., Zinchenko L.A. Evolutionary Modelling with Hierarchy and Dynamic Coding in ComputerAided Design // Evolutionary Methods for Design, Optimization and Control with Applications to Industrial Problems. - CIMNE, 2002. [Muehlenbein et al, 2002b] Muehlenbein H., Kureichik V.M., Mahnig T., Zinchenko L.A. Application of the Univariate Marginal Distribution Algorithm to Analog Circuit Design. Proc. EH’02. 2002. [Ning et al, 1991] Z. Ning et al., SEAS: A simulated evolution approach for analog circuit synthesis // Proc. IEEE Custom Integrated Circuits Conf. (CICC). 1991. [Ochotta et al, 1996] Ochotta E. S., Rutenbar R. A., and Carley L. R. Synthesis of highperformance analog circuits in ASTRX/OBLX. // IEEE Trans. CAD, 1996. №15(3). [Rogenmoser et al, 1996] Rogenmoser R., Kaeslin H., and Blickle T. Stochastic methods for transistor size optimization of CMOS VLSI circuits // Parallel Problem Solving From Nature IV. - Springer-Verlag, 1996. [Shuguang et al, 2005] Shuguang Zhao, Licheng Jiao, Jianxun Zhao, Yuping Wang. Evolutionary design of analog circuits with a uniform-design based multi-objective adaptive genetic algorithm // Proceedings of Conference EH-2005. 2005. [Sripramong et al, 2002] Sripramong T., Toumazou C. The Invention of CMOS Amplifiers Using Genetic Programming and Current-Flow Analysis // IEEE Trans. CAD, 2002. №21(11). [Stefanovic et al, 2003] Stefanovic D., Kayal M., Pastre M., Litovski V. B. Procedural Analog Design (PAD) Tool // Proc. ISQED’03. 2003. [Synopsys,2006] http://www.synopsys.com/products/mixedsignal/hspice/ [Torralba et al, 1996] A. Torralba, J. Chavez, and L. G. Franquelo. Fasy: A fuzzy-logic based tool for analog synthesis. // IEEE Trans. CAD. 1996. №15(7). [Van der Plas et al, 2001] Van der Plas G., Debyser G., Leyn F., Lampaert K., Vandenbussche J., Gielen G. E., Sansen W., Vaselinovic P., and Leenaerts D. AMGIE—A synthesis environment for CMOS analog integrated circuits // IEEE Trans. Computer-Aided Design Integr. Circuits Syst., 2001. №20 (9). [Vancorenland et al, 2000] Vancorenland P., De Ranter C., Steyaert M., Gielen G. Optimal RF Design Using Smart Evolutionary Algorithms // Proc. DAC. 2000. [Veselinovic et al, 1995] Veselinovic P. et al. A flexible topology selection program as part of an analog synthesis system // Proc. IEEE ED&TC. 1995. [Vieira et al, 2004] Vieira P.F., Sa L.B., Botelho J.P.B., Mesquita A. Evolutionary synthesis of analog circuits using only MOS transistors // Proc. EH’04. 2004. [Zebulum et al, 2003] Zebulum R., Pacheco M. and Vellasco M. Evolutionary Electronics – Automatic Design of Electronic Circuits and Systems by Genetic Algorithms. - CRC Press, 2003.