10. Gavrilov S.V. Metody analiza logicheskikh korrelyatsiy dlya SAPR tsifrovykh KMOP SBIS [Methods of analysis of logical correlations for CAD digital CMOS VLSI]. Moscow: Tekhnosfera, 2011, 136 p.
11. Chang C.L., Lee R.C.T. Symbolic Logic and Mechanical Theorem Proving. New York: Acad. Press, 1973.
12. Chen Ch., Li R. Matematicheskaya logika i avtomaticheskoe dokazatelstvo teorem [Mathematical logic and automatic theorem proving]. Moscow: Nauka, 1983, 360 p.
13. Maslov S.Yu. Obratnyy metod ustanovleniya vyvodimosti dlya logicheskikh ischisleniy [The inverse method of establishing hatchability for logical calculi]. Sb. trudovMIAN [Proceedings of Mathematical Institute named Century A. Steklov RAS], 1968, Vol. 98, pp. 26-87.
14. Papageorgiou D.J., Salpukas M.R. The Maximum Weight Independent Set Problem for Data Association in Multiple Hypothesis Tracking, 8th International Conference on Cooperative Control and Optimization, 2009, pp. 235-255.
15. Brendel W., AmerM. Multiobject tracking as maximum weight independent set, IEEE Conf. on Computer Vision and Pattern Recognition, 2011, pp. 1273-1280.
16. Loukakis E., Tsouros C. An Algorithm for the Maximum Internally Stable Set in a Weighted Graph, Intern. J. Computer Math, 1983, Vol. 13, pp. 117-129.
17. Shepard K.L. Design methodologies for noise in digital integrated circuits, Proc. DAC. 1998, pp. 94-99.
Статью рекомендовал к опубликованию д.т.н., профессор Ю.Ф. Адамов.
Гаврилов Сергей Витальевич - Институт проблем проектирования в микроэлектронике РАН (ИППМ РАН); e-mail: sergey_g @ippm.ru; 124365, Москва, Зеленоград, ул. Советская, 3; тел.: +74997299890; отдел автоматизации проектирования цифровых схем; профессор; зав. отделом.
Рыжова Дарья Игоревна - e-mail: [email protected]; отдел автоматизации проектирования цифровых схем; м.н.с.
Стемпковский Александр Леонидович - e-mail: [email protected]; директор; профессор; академик РАН.
Gavrilov Sergey Vitalievich - Institute for design problems in microelectronics of Russian Academy of Science; е-mail: [email protected]; 3, Sovetskaya street, Zelenograd, 124681, Russia; р^м: +74997299890; the department of automation of the design of digital circuits; professor; head of department.
Ryzhova Daria Igorevna - е-mail: [email protected]; junior research scientist.
Stempkovskiy Aleksandr Leonidovich - e-mail: [email protected]; director; professor; academician of RAS.
УДК 004.896
В.В. Курейчик, Д.В. Заруба, Д.Ю. Запорожец
ИЕРАРХИЧЕСКИЙ ПОДХОД ПРИ РАЗМЕЩЕНИИ КОМПОНЕНТОВ СБИС*
Предлагается модифицированный иерархический подход, состоящий из трех уровней, для решения задачи размещения компонентов СБИС. На первом уровне происходит предварительная декомпозиция всего пространства поиска на группы с использованием эволюционного подхода. Геометрические параметры каждой группы определяются суммарной
площадью входящих в его состав компонентов. На втором уровне производится размеще-
*
Работа выполнена при частичной поддержке РФФИ (проект № 13-01-00371).
ние внутри декомпозиционных групп на основе модифицированного генетического алгоритма. Модификация алгоритма состоит в использовании адаптированных под решение данной задачи операторов кроссинговера. Предложенные операторы позволяют получать заведомо корректные решения, что снижает время получения окончательного результата. На третьем уровне, на основе генетического поиска, размещаются сами декомпозиционные группы. Для выполнения генетических процедур авторами предложена методика кодирования и декодирования множества альтернативных решений с помощью обратной польской нотации. Проведен вычислительный эксперимент, который позволил подтвердить теоретические оценки быстродействия и эффективности разработанных алгоритмов. Проведено сравнение с биоинспирированными и классическими алгоритмами поиска. Временная сложность разработанного алгоритма равна ~ O(n log n).
СБИС; автоматизация проектирования; размещение; компоновка; многоуровневая оптимизация; генетический алгоритм; биоинспирированный поиск.
V.V. Kureichik, D.V. Zaruba, D.U. Zaporoghetz HIERARCHICAL APPROACH FOR VLSI COMPONENTS PLACEMENT
A modified hierarchical approach for solving VLSI components problem, consisting of three levels, proposed in this paper. On the ground level there is a preliminary decomposition of the whole space of the search group using an evolutionary approach. Geometric parameters of each group determined the total area of its constituent components. At the second level of decomposition is performed accommodation within groups based on a modified genetic algorithm. Modification of the algorithm is to use adapted to the solution of this problem crossover operators. The proposed operators allow knowingly receive the correct solution that reduces the time the final result. At the third level, based on genetic search, placed themselves decompositional group. To perform genetic procedures authors proposed a method of encoding and decoding ofmultiple alternative solutions using reverse polish notation. A computational experiment, which has confirmed the theoretical estimates of the performance and efficiency of the developed algorithms. A comparison with the classical algorithms and bioinspired search. The time complexity of the algorithm is ~ O (n log n).
VLSI design automation; placement; layout; multi-level optimization; genetic algorithm; bioinspired search.
Введение. Технологии изготовления СБИС на сегодняшнем этапе развития позволяют размещать на кристалле до нескольких десятков миллионов элементов. Параллельно с этим возникает необходимость развития методов и средств автоматизированного проектирования таких устройств. Переход технологий в субмикронный диапазоны сопровождается появлением новых физических явлений. Актуальной проблемой является разработка новых эвристических методов и алгоритмов решения задач конструкторского проектирования [1]. Рассматривается задача размещения компонентов СБИС. Данная задача является NP-полной, а значит, для нахождения решения за полиномиальное время необходимо разрабатывать и применять эвристики, позволяющие находить квазиоптимальные решения. Это механизмы эволюционного и биоинспирированного поиска, показавшие свою эффективность для решения задач конструкторского проектирования [1—4]. Предлагается использование иерархического поиска для решения задачи размещения компонентов СБИС на основе биоинспирированного подхода.
Постановка задачи. Исходными данными задачи размещения компонентов СБИС являются: комутационное поле; электрическая схема, содержащая заданное количество компонентов; список цепей.
Сформулируем задачу размещения следующим образом. На заданном коммутационном поле необходимо разместить множество элементов друг относительно друга таким образом, чтобы производительность системы F стремилась к оптимальному значению. Под производительностью F будем понимать суммарную
временную задержку передачи сигнала путем уменьшения длины межсоединений. Оптимизация данного параметра сводится к минимизации длины критического соединения. Под критическим соединением будем понимать электрическую цепь, имеющую на данном этапе наибольшую длину [5].
Дадим формальное описание задачи размещения элементов СБИС. Пусть Бь ..., Bn размещаемые на коммутационном поле элементы. Каждый элемент Bi |1 < i < N, задается геометрическими размерами: высотой h и шириной Пусть N = {Nj | i = 1,m} - список цепей. Пусть Lj - длина цепи Nj | i = 1,m. Задача размещения заключается в нахождении прямоугольных областей на коммутационном поле для каждого размещаемого элемента из B и Q и определяется множеством областей R = {Ri | i = 1, n} таким, что:
1. Каждый блок располагается в соответствующей прямоугольной области таким образом, что Ri имеет высоту hi и ширину wi.
2. Области из множества R не пересекаются.
3. Общая площадь описывающего прямоугольника множества R - стремится к минимальной.
4. Минимизируется суммарная длина соединений так, что
F = I^Li. F ^ min.
Для нахождения Li - длины i-ой цепи, предлагается использовать описывающий прямоугольник цепи, так как временная сложность алгоритма (ВСА) расчета данной величины является линейной.
Обобщенная структура иерархического поиска. Основной проблемой решения задачи размещения элементов СБИС является обработка огромных массивов информации. Для эффективного решения этой проблемы предлагается модифицированный иерархический подход, состоящий из трех уровней. Это позволит сократить количество компьютерных ресурсов, время поиска и позволит получать оптимальные и квазиоптимальные результаты за полиномиальное время. Модифицированная обобщенная схема такого поиска приведена на рис. 1.
Рис. 1. Обобщенная схема иерархического поиска
В этой схеме на I уровне иерархии применяется эволюционный алгоритм декомпозиции всего множества элементов СБИС на группы. На II уровне иерархии используется генетический алгоритм размещения элементов внутри декомпозиционных групп. На III уровне иерархии используется аналогичный генетический алгоритм для решения задачи глобального размещения декомпозиционных групп на коммутационном поле. В генетическом алгоритме при решении подзадач II и III иерархических уровней предлагается кодировать решения с помощью обратной
польской нотации. Обратная польская нотация (ОПН) — форма записи выражений, в которой операнды расположены перед знаками операторов. Методики кодирования и декодирования решений подробно описаны в [6, 7]. Авторами для эффективной реализации генетического поиска предлагается ввести следующие операторы:
♦ «вправо» - последующий фрагмент располагается правее предыдущих вдоль оси абсцисс;
♦ «вверх» - последующий фрагмент располагается выше предыдущих вдоль оси ординат.
Для удобства кодирования обозначим оператор «вверх» знаком «+», оператор «вправо» знаком «*».
Декомпозиция схемы. При решении задач большой размерности обычно применяют алгоритмы декомпозиции исходного множества входных данных на подмножества меньшего размера. Однако задача декомпозиции является так же NP-полной и требует отдельной проработки. Авторами предложено использовать эволюционный алгоритм декомпозиции [8-9]. Временная сложность такого алгоритма (ВСА) равна O(n log n), что позволяет говорить о скорости проведения поиска [10-12]. Для решения задачи размещения введем критерий, позволяющий адекватно размещать элементы и декомпозиционные группы (ДГ) на коммутационном поле. Пусть W^) вес цепи, равный количеству элементов (вершин) входящих в цепь c е С. Таким образом, критерий Fd суммарного веса цепей в межблочных соединениях рассчитывается по следующей формуле:
Fd = I f^W (j ) . Fd ^ min, где Nc - количество цепей в схеме. Ограничением при декомпозиции будет являться следующее правило:
I ?=\S (Р )<5/ю
где Mfc - количество элементов в k-ой ДГ, S(p) - площадь p-го элемента, S - площадь коммутационного поля, K - количество ДГ.
Одну декомпозиционную группу элементов представим в виде кортежа.
dbfc = < ЯМ,,,/ Cfc,C Cfc > , где fMfc - подмножество элементов из множества B в k-ом блоке, / Cfc - список внутренних связей блока, - список внешних связей блока. Результатом декомпозиции будет являться множество декомпозиционных групп DB = {dbk}, . k - задается конструктором (лицом, принимающим решения).
Локальное и глобальное размещение. На II иерархическом уровне будем размещать декомпозиционную группу в область геометрически подобную области коммутационного поля размером равным X на основе модифицированного генетического алгоритма (рис. 2) [13, 14].
Опишем выполнение алгоритма подробнее. На нулевой итерации для данного множества элементов n инициализируется популяция размером P альтернативных решений (хромосом) длиной 2n-1 в соответствии с описанными выше правилами. Далее применяется модифицированный оператор редукции. Данный блок необходим для отсеивания хромосом, заведомо не несущих в себе оптимального размещения («худшие хромосомы»). Модификация состоит в том, что с помощью данного блока «худшие хромосомы» подлежат исправлению, если это возможно. Если такой возможности нет, хромосомы удаляются из популяции.
Авторы предлагают следующие эвристики исправления хромосом:
1. Поворот всего множества фрагментов вокруг осей.
2. Выделение часто используемых операторов. Так, например, у фрагмента его длина больше, чем высота. Соответственно оператор «вправо» будет использоваться чаще, чем оператор «вверх». Значит, при исправлении данный оператор частично заменит оператор «вверх». Очевидно, что позиции, расположенные ближе к концу хромосомы, несут большие изменения в конечном размещении [6]. При таком походе размер новой популяции решений может быть отличен от исходного. Поэтому предусмотрена возможность дополнительной генерации особей, с последующей их проверкой. Для генерации потомков с заданной вероятностью выполняется один из трех операторов кроссинговера (ОК): ОК1, ОК2 или ОК3.
Конец
Рис. 2. Общая структура модифицированного генетического алгоритма
Принцип работы ОК1 схематично изображен на рис. 3 и заключается в следующем.
Р1 16+39* + 8+ 57+* 24 + *
Рис. 3. Принцип работы ОК1
На первом шаге гены-операнды хромосомы-родителя Р1 копируются в соответствующие гены хромосомы-потомка. Затем операторы хромосомы-родителя Р2 копируются слева на право в хромосому-потомка, заполняя таким образом оставшиеся позиции. Оператор кроссинговера ОК2 работает противоположным образом, как изображено на рис. 4.
Рис. 4. Принцип работы ОК2
В первую очередь копируются гены-операторы хромосомы-родителя Р2, а затем - гены-операнды хромосомы-родителя Р1. В основе работы оператора крос-синговера ОК3 лежит принцип выделения строительных блоков. Строительные блоки - это тесно связанные между собой отдельные гены или группы генов (части альтернативных решений), которые нежелательно изменять в процессе поиска [2]. Принцип работы ОК3 приведен на рис. 5.
Рис. 5. Принцип работы ОК3
Особенность оператора кроссинговера ОК3 заключается в том, что сначала копируется выделенный в одной из хромосом-родителей строительный блок, а затем переносятся не задействованные гены или части альтернативных решений из других хромосом-родителей. После работы оператора кроссинговера из всего множества сгенерированных потомков произвольно выбирается определенное количество хромосом для реализации модифицированного оператора мутации.
Предлагается модифицированный оператор мутации, реализующий парные перестановки двух генов одинакового типа, то есть ген несущий информацию об операнде может быть переставлен только на место гена, несущего информацию об операнде, а ген, несущий информацию об операции может быть переставлен только на место гена несущего информацию об операции. Далее выполняется модифицированный оператор инверсии. Модификация оператора инверсии состоит в том, что находится последовательность генов, состоящих только из генов-операндов или генов-операций, с максимальным Хемминговым расстоянием, которая перезаписывается в обратном порядке (инвертируется) [1, 2]. Затем выполняется модифицированный оператор отбора на основе «Колеса рулетки». Отличительной особенностью которого является возможность исправлять «худшие хромосомы» и, в случае невозможности исправления, удалять их. Исправленные хромосомы также участвуют в процессе отбора.
На III иерархическом уровне проводится глобальное размещение на множестве декомпозиционных групп DB. Список связей формируется объединением всех множеств ССк. В качестве алгоритма размещения ДГ используется модифицированный генетический алгоритм описанный ранее.
Для реализации генетического поиска введен блок эволюционной адаптации. Данный блок предназначен для настройки и изменении порядка использования и применения различных генетических операторов и схем поиска с учетом измене-
ния внешней среды. Результаты работы блока эволюционной адаптации оказывают непосредственное влияние на процесс перестройки текущей популяции альтернативных решений и создания на ее основе новой популяции [1-3, 10, 14].
Процесс поиска продолжается итерационно до достижения условий останова. Критериями останова может быть заданное число итераций, установленное время, достижение определенного качества решений.
Экспериментальные исследования. Для проведения вычислительного эксперимента была построена программная среда, реализующая разработанные алгоритмы размещения компонентов СБИС.
Была проведена серия экспериментов для разного набора тестовых примеров, различающихся количеством элементов в схеме [6, 7]. Усредненные результаты экспериментов отражены на рис. 6. ВСА составила O(n log n), что подтвердило теоретические оценки.
Рис. 6. График зависимости времени работы алгоритма от количества
элементов
Далее была проведена серия тестов с различным количеством декомпозиционных групп для схемы с числом элементов равным 524288 шт. На рис. 7 представлена зависимость качества получаемых решений от количества ДГ.
Рис. 7. График зависимости качества работы алгоритма от количества декомпозиционных групп
На основе анализа полученных результатов оптимальное количество декомпозиционных групп равно 1024. Размер ДГ при таком разбиении примерно составляет 500 элементов. Так же была проведена серия экспериментов разработанных алгоритмов для схем размерностью от 1000 до 500000 элементов.
На рис. 8 представлена гистограмма сравнения качества решения, получаемого разработанным иерархическим алгоритмом (ИА) с пчелиным (ПА) [15], муравьиным (МА) [9, 15], генетическим (ГА) [9, 10, 13] и эволюционным алгоритмами (ЭА) [3, 4].
На основе анализа проведенных исследований качество размещений, полученных на основе иерархического поиска, в среднем на 4,38 % превосходит результаты размещения, полученные с использованием пчелиных, муравьиных и эволюционных алгоритмов, что говорит об эффективности предложенного подхода.
. 800000 ai
» 600000 в
=Г 400000 i 200000 5 0
-■ilLi
I ГА IMA ЭА
# cfP 0?Q ¡£> # „<9 #
Количество элементов в схеме, шт
Рис. 8. Гистограмма сравнения качества решения, получаемого разработанным
иерархическим алгоритмом
Заключение. В данной работе авторами был предложен иерархический подход решения задачи размещения компонентов СБИС, позволяющий сократить количество компьютерных ресурсов и время поиска оптимальных и квазиоптимальных результатов.
Проведен вычислительный эксперимент, который позволил подтвердить теоретические оценки быстродействия и эффективности разработанных алгоритмов. Проведено сравнение с биоинспирированными и классическими алгоритмами поиска. Временная сложность разработанного алгоритма составила ~ O(n log n).
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. Гладков Л.А., Курейчик В.В., Курейчик В.М., Сороколетов П.В. Биоинспирированные методы в оптимизации. - М.: Физматлит, 2009. - 384 с.
2. Гладков Л.А., Курейчик В.В., Курейчик В.М. Генетические алгоритмы. - М.: Физматлит, 2010. - 368 с.
3. Курейчик В.В., Курейчик В.М., Родзин С.И. Теория эволюционных вычислений. - М.: Физматлит, 2012. - 260 с.
4. Курейчик В.В., Курейчик В.Вл. Эволюционный алгоритм проектирования комбинационных логических схем // Известия Кабардино-Балкарского научного центра РАН.
- 2013. - № 4 (54). - С. 42-47.
5. Курейчик В.В., Запорожец Д.Ю. Современные проблемы при размещении элементов СБИС // Известия ЮФУ. Технические науки. - 2011. - № 7 (120). - С. 68-73.
6. Запорожец Д.Ю., Заруба Д.В., Лежебоков А.А. Об одном способе кодирования решения для задачи размещения // Известия ЮФУ. Технические науки. - 2012. - № 11 (136).
- С. 183-188.
7. Курейчик В.В., Сороколетов П.В. Концептуальная модель представления решений в генетических алгоритмах // Известия ЮФУ. Технические науки. - 2008. - № 9 (86).
- С. 7-12.
8. Курейчик В.М., Курейчик В.В. Генетический алгоритм разбиения графа // Известия РАН. Теория и системы управления. - 1999. - № 4.
9. КурейчикВ.В., КурейчикВл.Вл. Биоинспирированный алгоритм разбиения схем при проектировании СБИС // Известия ЮФУ. Технические науки. - 2013. - № 7 (144). - С. 23-29.
10. Запорожец Д.Ю., Кудаев А.Ю., Лежебоков А.А. Многоуровневый алгоритм решения задачи параметрической оптимизации на основе биоинспирированных эвристик // Известия Кабардино-Балкарского научного центра РАН. - 2013. - № 4. - С. 21-28.
11. Бова В.В., Курейчик В.В. Интегрированная подсистема гибридного и комбинированного поиска в задачах проектирования и управления // Известия ЮФУ. Технические науки.
- 2010. - № 12 (113). - С. 37-42.
12. Курейчик В.В., Курейчик Вл.Вл. Архитектура гибридного поиска при проектировании // Известия ЮФУ. Технические науки. - 2012. - № 7 (132). - С. 22-27.
13. Kurejchik V.V., Kurejchik V.M. On genetic-based control // Автоматика и телемеханика.
- 2001. - № 10. - С. 174-187.
14. Курейчик В.В., Курейчик В.Вл. Биоиспирированный поиск при проектировании и управлении // Известия ЮФУ. Технические науки. - 2012. - № 11 (136). - С. 178-183.
15. Курейчик В.В., Запорожец Д.Ю. Роевой алгоритм в задачах оптимизации // Известия ЮФУ. Технические науки. - 2010. - № 7 (108). - С. 28-32.
REFERENCES
1. Gladkov L.A., Kureychik V.V., Kureychik V.M., Sorokoletov P.V. Bioinspirirovannye metody v optimizatsii [Bioinspiration methods in optimization]. Moscow: Fizmatlit, 2009, 384 p.
2. Gladkov L.A., Kureychik V.V., Kureychik V.M. Geneticheskie algoritmy [Genetic algorithms]. Moscow: Fizmatlit, 2010, 368 p.
3. Kureychik V.V., Kureychik V.M., Rodzin S.I. Teoriya evo^^son^kh vychisleniy. Moscow: Fizmatlit, 2012, 260 p.
4. Kureychik V.V., Kureychik V.Vl. Evolyutsionnyy algoritm proektirovaniya kombinatsionnykh logicheskikh skhem [Evolutionary algorithm design of combinational logic circuits], Izvestiya Kabardino-Balkarskogo nauchnogo tsentra RAN [Izvestiya Kabardino-Balkar scientific centre of the RAS], 2013, No. 4 (54), pp. 42-47.
5. Kureychik V. V., Zaporozhets D.Yu. Sovremennye problemy pri razmeshchenii elementov SBIS [Modern problems when placing elements of VLSI], Izvestiya YuFU. Tekhnicheskie nauki. [Izvestiya SFedU. Engineering Sciences], 2011, No. 7 (120), pp. 68-73.
6. Zaporozhets D.Yu., Zaruba D. V., Lezhebokov A.A. Ob odnom sposobe kodirovaniya resheniya dlya zadachi razmeshcheniya [One method of encoding solutions of location problems], Izvestiya YuFU. Tekhnicheskie nauki [Izvestiya SFedU. Engineering Sciences], 2012, No. 11 (136), pp. 183-188.
7. Kureychik V.V., Sorokoletov P.V. Kontseptualnaya model predstavleniya resheniy v geneticheskikh algoritmakh [Conceptual model of representations of solutions in genetic algorithms], Izvestiya YuFU. Tekhnicheskie nauki [Izvestiya SFedU. Engineering Sciences], 2008, No. 9 (86), pp. 7-12.
8. Kureychik V.M., Kureychik V.V. Geneticheskiy algoritm razbieniya grafa [Genetic algorithm for graph partitioning], Izvestiya RAN. Teoriya i sistemy upravleniya [Izvestiya of the Russian Academy of Sciences. Theory and control system], 1999, No. 4.
9. Kureychik V.V., Kureychik Vl.Vl. Bioinspirirovannyy algoritm razbieniya skhem pri pro-ektirovanii SBIS [Biospherology partitioning algorithm of schemes in the design of VLSI], Izvestiya YuFU. Tekhnicheskie nauki [Izvestiya SFedU. Engineering Sciences], 2013, No. 7 (144), pp. 23-29
10. Zaporozhets D.Yu., Kudaev A.Yu., Lezhebokov A.A. Mnogourovnevyy algoritm resheniya zadachi parametricheskoy optimizatsii na osnove bioinspirirovannykh evristik [Multilevel algorithm for solving the problem of parametric optimization based on bioinspiration heuristics], Izvestiya Kabardino-Balkarskogo nauchnogo tsentra RAN [Izvestiya Kabardino-Balkar scientific centre of the RAS], 2013, No. 4, pp. 21-28.
11. Bova V.V., Kureychik V.V. Integrirovannaya podsistema gibridnogo i kombinirovannogo poiska v zadachakh proektirovaniya i upravleniya [Integrated hybrid and combined search in the problems of design and management ], Izvestiya YuFU. Tekhnicheskie nauki [Izvestiya SFedU. Engineering Sciences], 2010, No. 12 (113), pp. 37-42.
12. Kureychik V.V., Kureychik Vl.Vl. Arkhitektura gibridnogo poiska pri proektirovanii [Hybrid search when designing], Izvestiya YuFU. Tekhnicheskie nauki [Izvestiya SFedU. Engineering Sciences], 2012, No. 7 (132), pp. 22-27.
13. Kurejchik V.V., Kurejchik V.M. On genetic-based control, Avtomatika i telemekhanika [Automatics and telemechanics], 2001, No. 10, pp. 174-187.
14. Kureychik V.V., Kureychik Vl.Vl. Bioispirirovannyy poisk pri proektirovanii i upravlenii [Biospherology search in the design and management], Izvestiya YuFU. Tekhnicheskie nauki [Izvestiya SFedU. Engineering Sciences], 2012, No. 11 (136), pp. 178-183.
15. Kureychik V.V., Zaporozhets D.Yu. Roevoy algoritm v zadachakh optimizatsii [Swarm algorithm in optimization problems] Izvestiya YuFU. Tekhnicheskie nauki [Izvestiya SFedU. Engineering Sciences], 2010, No. 7 (108), pp. 28-32.
Статью рекомендовала к опубликованию д.т.н., профессор Л. С. Лисицына.
Курейчик Владимир Викторович - Южный федеральный университет; e-mail: [email protected]; 347928, г. Таганрог, пер. Некрасовский, 44; тел.: 88634371651; кафедра систем автоматизированного проектирования; зав. кафедрой; д.т.н.; профессор.
Запорожец Дмитрий Юрьевич - e-mail: [email protected]; кафедра систем автоматизированного проектирования; аспирант.
Заруба Дарья Викторовна - e-mail: [email protected]; кафедра систем автоматизированного проектирования; аспирантка.
Kureichik Vladimir Victorovich - Southern Federal University; e-mail: [email protected]; 44, Nekrasovskiy, Taganrog, 347928, Russia; phone: +78634371651; the department of computer aided design; head of department; dr. of eng. sc.; professor.
Zaporoghetz Dmitri Urievich - e-mail: [email protected]; the department of computer aided design; postgraduate student.
Zaruba Daria Victorovna - e-mail: [email protected]; the department of computer aided design; postgraduate student.
УДК 321.628
В.В. Курейчик, Вл.Вл. Курейчик
ИНТЕГРИРОВАННЫЙ АЛГОРИТМ РАЗМЕЩЕНИЯ ФРАГМЕНТОВ
CБИС*
Рассмотрена одна из важных задач конструкторского проектирования - задача размещения фрагментов СБИС. Она относится к классу NP-сложных и трудных задач. Приведена постановка задачи размещения. Описаны модели представления задачи размещения и обосновано построение на их основе иерархической многоуровневой декомпозиционной структуры. Сформулирована эвристика, позволяющая выделять связанные фрагменты графовой модели коммутационной схемы в виде строительных блоков, образованных короткими цепями. Предложен комбинированный поиск, реализованный по иерархическому принципу на основе генетических, эволюционных и алгоритмов, моделирующих механизмы принятия решений природными системами. Разработан интегрированный алгоритм, позволяющий распараллеливать процесс решения и частично устранять проблему предварительной сходимости. Проведен вычислительный эксперимент. Проведенные серии тестов и экспериментов позволили уточнить теоретические оценки временной сложности алгоритмов размещения и их поведение для схем различной структуры. В лучшем случае временная сложность алгоритмов oO(nlogn), в худшем случае - О(п3).
Комбинированный поиск; конструкторское проектирование; муравьиный алгоритм; размещение; генетический алгоритм.
V.V. Kureichik, Vl.Vl. Kureichik INTEGRATED VLSI FRAGMENT PLACEMENT ALGORITHM
One of the important tasks of the design engineering such as VLSI placement problem is presented in this article. It belongs to the class of NP-hard problem. The paper contains formulation of the placement problem. The models represent the problem of locating and proved multilevel hierarchical decomposition structure. Formulated heuristics, allowing to allocate associated fragments of a graph model of a circuit diagram in the form of building blocks formed by short chains. It was suggested a combined search, implemented by a hierarchical principle on the basis of genetic, evolutionary and algorithms modeling decision-making mechanisms in natural systems. It was developed an integrated algorithm that allows to parallelize the process of solving the prob-
*
Работа выполнена при частичной поддержке РФФИ (проект № 13-01-00371). 84