УДК 658.5
В.В. СЕМЕНЕЦ, В.Г. ИВАНОВ
К ВОПРОСУ ОБ АНАЛИЗЕ СТРУКТУРЫ ЗАДАЧИ ПРОЕКТИРОВАНИЯ ТОПОЛОГИИ МИКРОЭЛЕКТРОННЫХ УСТРОЙСТВ
Рассматриваются задачи проектирования топологии микропроцессорных электронных устройств с помощью экспертных систем. Предлагается алгоритм трассировки, использующий дерево решений с утверждениями и доказательствами.
Современной конструктивной базой создания электронной аппаратуры являются большие, сверхбольшие интегральные схемы, многослойные печатные платы и многокристальные микросборки. Проектирование микроэлектронных устройств (МЭУ) имеет значительный недостаток - проектирование топологии, связанное со значительными временными затратами. Под проектированием топологии МЭУ понимают определение точного расположения электронных элементов на кристалле или подложке и реализацию всех соединений в соответствии с электрической схемой так, чтобы удовлетворялись технологические требования к электрическим связям. Большинство задач топологического проектирования относятся к классу трудно решаемых задач, время решения которых растет экспоненциально с увеличением размерности задач.
Основная задача канальной трассировки - выбор наименьшей ширины канала, достаточной для размещения в нем всех соединений, и назначения соединений на магистрали. Некоторые алгоритмы решения данной задачи нами были рассмотрены в [1]. Проанализировав литературу [2 - 4] и полученные нами результаты, мы пришли к выводу о необходимости дальнейшего исследования структур системы ограничений задачи трассировки многокристальных микросборок.
1. Алгоритм трассировки, использующий дерево решений
Шаг 1. Определение кратчайшего остова графа.
Шаг 2. Если локальная степень каждой вершины остова меньше или равна двум, идти к шагу 14. В противном случае идти к шагу 3.
Шаг 3. Определение ребер, которые входят в вершины остового дерева с локальной
степенью больше двух (формирование списка А8, 8 = 1, М).
Шаг 4. Примем 1 = 1.
Шаг 5. Ребру с номером i присвоим бесконечный вес.
Шаг 6. Определение кратчайшего остова графа.
Шаг 7. Если локальная степень каждой вершины остова меньше или равна двум, идти к шагу 9. В противном случае - к шагу 8.
Шаг 8. Формирование списка В8, 8 = (В список Вя включаются ребра остового дерева, которые инцидентны вершинам с локальной степенью больше двух).
Шаг 9. Примем 1 = 1 +1.
Шаг 10. Если 1 < М, то идти к шагу 5, в противном случае - к шагу 11.
Шаг 11. Если список В8 пуст, то идти к шагу 14, в противном случае - к шагу 12.
Шаг 12. Перезапись списка В8 в список А8. В8 = 0 .
Шаг 13. Идти к шагу 4.
Шаг 14. Конец.
2. Алгоритм определения кратчайшего остова [5]
Шаг 1. Пусть Т8 = {у8}, где у8 - произвольно выбранная вершина, Ds = 0 является множеством ребер, входящих в кратчайший остов).
Шаг 2. Для каждой вершины е Т8 найти вершину aj е Т8, такую что
c(aj, Vj) = min [c(Vi, Vj)] = Bj, vi eTS
и присвоить вершине Vj пометки [aj,ßj]. Если такой вершины aj нет, т.е. при r(vj)ПTs = 0, приписать вершине Vj пометку [0, да].
Шаг 3. Выбрать такую вершину Vj*, что Bj* = min [Bj ].
vj eTs
Обновить данные TS = TS U{Vj*},DS = DS U{aj*, Vj*} .
Если [Ts] = P , то остановиться. Ребра hds образуют кратчайший остов.
Если [Ts ] ф P , то перейти к шагу 4.
Шаг 4. Для всех Vj е Ts, таких, что Vj е r(Vj*), обновить пометки следующим образом. Если ß j > c(Vj*, V j), то положить ß j > c(Vj*, Vj), a j = V j* и вернуться к шагу 3. Если ßj < c(v j*, Vj), то перейти к шагу 3. Задача коммивояжера с произвольной асимметричной матрицей весов может быть решена за время T » kp3 .
Рассмотрим две группы правых цепей, у которых существуют вершины с локальной степенью, равной нулю. Из свойств 1-5 следует, что возможно шесть различных вариантов (рис. 1 - 6).
Рассмотрим две группы цепей (рис. 1). Определим разности
Ai = k - Pai, А2 = Pbi - Pa2 ,
Ai = Pbi-i - Pai , (1)
(Рм-1 - Раа' при а =1 +1'
А а =
^ Рьа, при а = 1 ,
g = ; = 1,2,...,а,
S=1
где к - количество вершин, локальная степень которых равна нулю.
Утверждение 1. Если g > 0 [ = 1,2,...,а, то для трассировки двух групп цепей необходимо и достаточно i треков, где 1 = тах^,^} .
Доказательство. Необходимость. Для трассировки каждой группы необходимо 1; треков (длина дуги в графе вертикальных ограничений ьй группы). Тогда очевидно 1 = тах{11,12} .
Достаточность. Рассмотрим крайний случай, когда g; = 0, I = 1,2,...,а . К вершинам первой группы присвоим пометки от 1 до к, так как А1 = 0 , то к - вершинам второй группы присвоим пометки от 1 до к (вершина Ь получит пометку к). Тогда Рь1 вершинам первой группы дадим пометки от к +1 до к + Р^ (вершина а2 получит пометку к + Р^ ). Теперь Ра2 вершин второй группы получат пометки от к до к + Ра2 -1. На основании того, что gi = 0 можно присвоить пометки всем вершинам второй группы. Мы рассматривали наихудший случай. При g; > 0, I = 1,2,...,а пометки будут расставлены аналогичным путем.
Утверждение 1 доказано.
Следствие 1. В том случае, когда для некоторого значения к 8к < 0, необходимо расставить пометки для g1,g2,...^к-1 > 0, а для оставшегося графа расставить пометки согласно выражению
тт{ь 12} +1. (2)
Для двух групп правых цепей (рис. 2) определим
¿1 = Ра1 - Рь2 + к, Л2 = Ра2 - РЬ2 ,
Аа =
= Ра; - РЬ , (3)
{Рай - РЬй , при а = 1, раа, при а = 1+1 ,
v
1
8! = £А81 = 1, а, 8=1
где к - количество вершин, с локальной степенью равной нулю.
Утверждение 2. Если 8; > 0, 1 = 1, а, то для трассировки двух групп правых цепей необходимо и достаточно i - треков, где 1 = тах^,^} .
Доказательство. Необходимость. Аналогично утверждению 1.
Достаточность. Пусть ¿1 = 0 к + Р^ вершинам первой и второй группы присвоим пометки от 1 до к + Р^ . Возникает противоречие, так как вершины Ь1 и а2 получили одинаковые пометки. Для разрешения этого противоречия необходимо одной из вершин дать пометку, равную к + Ра +1, что эквивалентно увеличению длины пути 11 или 12 . Этого противоречия не будет, если А1 > 0 . Вершина а2 получит пометку меньшую, чем Ь1. Тогда для подграфа, состоящего из вершин, образующих подмножества А = (а2,а3,...,ай) и В = (Ь1, Ь2,..., Ьт), справедливо утверждение 1. Для > 0 , 1 = 2,3,..., а необходимо, чтобы пометка вершины Ь1 была больше пометки вершины а2 . Это условие выполнено. Тогда с учетом ¿1 > 0 мы имеем > 0, 1 = 1,а и 1 = тах^,^} .
Утверждение 2 доказано.
Следствие 2. В том случае, когда для некоторого значения к 8к < 0, необходимо расставить пометки для 81,8 2 ,...,8к-1 > 0, а для оставшегося расставить пометки согласно выражению (2).
Для групп цепей, показанных на рис. 3 и 4, справедливы утверждения 1 и 2, соответственно, если выполним нумерацию треков снизу вверх. При этом ориентированные ребра поменяют направления, и графы по своей структуре будут соответствовать графам, изображенным на рис. 1 и 2.
Для групп цепей, изображенных на рис. 5 и 6, необходимо использовать различные комбинации утверждений 1 и 2.
Если рассмотреть левые группы цепей, рассмотренных в работе [1] (на рис. 1), для
которых выполняются условия х1 < х2 у1 < у2 х2 < х1+1, то для них справедливы все приведенные выше утверждения.
Рассмотрим две группы цепей, одна из которых левая, а другая правая (считаем, что локальная степень любой вершины в ОГВГО отлична от нуля).
ОГВГО приведен на рис. 7.
Рис. 1
^ —^ Ч
N
^^ N Ч ^ ч
Ч ^ V \
ч
Рис. 2
У
У
к—*
У
У
Рис. 3
Рис. 4
Утверждение 3. Если в ОГВГО, который описывает ограничения на расположение правой и левой группы цепей, не существует вершин с локальной степенью, равной нулю, то трассировка двух групп цепей возможна на 1 +1 треках, где 1 = тах{11,12 } .
Доказательство. Для определенности будем считать, что ориентированные ребра первой группы направлены вниз, а второй группы - вверх. Если начальные вершины каждой группы не связаны ребром, то присвоим им пометки с номером один. Аналогично дадим пометки для последующих вершин. На определенном этапе найдутся две вершины, которые связаны неориентированным ребром и обе претендуют на пометку с одинаковым номером а . Пусть Р; - локальная степень этих вершин без учета помеченных вершин (; -номер группы); 1; - длина простого ориентированного пути >й группы цепей в ОГВГО. Возможны следующие случаи:
ж) Р1 = 1, Р2 > 1, 11 < 12,
з) Р1 = 1, Р2 > 1, 11 = 12 ,
и) ~ = 1, ~ > 1, 11 > 12 , к) Р1 > 1, Р2 > 1, 11 > 12, л) Р1 > 1, ~2 > 1, 11 = 12 , м) Р1 > 1, Р2 > 1, 11 < 12 .
После разрешения данного конфликта при дальнейшем распределении пометок хотя и будут встречаться вершины, связанные ребром, однако одна вершина будет иметь пометку меньше а, вторая - больше а .
Различные варианты ОГВО для правой и левой групп цепей изображены на рис. 5-7.
а) Р1 = 1, Р2 = 1, 11 < 12.
б) ~ = 1, ~ = 1, 11 = 12.
в) Р1 = 1, ~ = 1, 11 > 12 =
г) Р1 > 1, ~ = 1, 11 < 12 =
д) ~1 > 1, Р2 = 1, 11 = 12 =
е) Р1 > 1, ~ = 1, 11 > 12 =
о
Рис. 5
Рис. 6
Рис. 7
Случай а).
Вершине первой группы присвоим пометку с номером а +1, а вершине второй группы -пометку с номером а . Тогда 1 = тах{11 +1,12} = 12 +1.
Случай б).
Расставим пометки как для случая а), тогда
1 = тах{11 +1,12 } = 11 +1.
Случай в).
Вершине второй группы присвоим пометку с номером а +1 , а вершине второй группы -пометку с номером а . Тогда 1 = тах{1,12 +1} = 11.
Случай г).
Если 12 -11 > Р1, то вершине первой группы присвоим пометку с номером а + Р1, а вершине второй группы - пометку с номером а , тогда
1 = тах{11 + Р1Л2} = 12 .
Если 12 -11 < Р1, то вершине первой группы присвоим пометку с номером а, а вершине второй группы - а +1 , тогда
1 = тах{11,12 +1} = 12 +1.
Случай д).
В этом случае справедлива вторая часть случая г) и поэтому 1 = тах{^ ,12 +1} = 12 +1.
Случай е).
Вершине первой группы дадим пометку с номером а , а вершине второй группы - а +1 , тогда 1 = тах{11,12 +1} = 11.
Случай ж).
Вершине второй группы присвоим пометку с номером б, а вершине первой группы -а +1, тогда
1 = тах{11,+1,12} = 12 .
Случай з).
Аналогично случаю ж).
Случай и).
Если 11 - 12 > Р2 , то вершине первой группы присвоим пометку с номером а , а вершине второй группы - а + Р2 , тогда
1 = тах{11,12 + Р2} = 11.
Если 11 - 12 < Р2 , то вершине первой группы присвоим пометку с номером а +1 , а вершине второй группы - а . Поэтому 1=тах{11 +1,12}=11 +1
Случай к).
Если 11 - 12 > Р2 , то вершине первой группы присвоим пометку с номером а , а вершине второй группы - а + Р2 , тогда
1 = тах{11,12 + р2 } = 11.
Если 11 -12 < Р2, то вершинам первой группы присвоим пометку с номером а, а + 2, а + 3 и т. д., а вершинам второй группы - а +1, а + 2, а + 3 и т. д. Поэтому 1 = тах{11,+1,12 +1} = 11 +1.
Случай л).
Он соответствует второй части случая к).
Случай м). Если 12 - 11 > Р1 , то вершине первой группы присвоим пометку с номером а + Р1, а вершине второй группы - а . Поэтому 1 = тах{11 + Р^12} = 12.
Если l2 - lj < P1, то вершинам первой группы присвоим пометки с номером а, а + 2, а + 3 и т. д., а вершинам второй группы - а +1, а + 2, а + 3и т. д.
Поэтому l = max{l1,+1,l2 +1} = l2 +1. Утверждение 3 доказано.
Следствие 3. Если в ОГВГО существуют вершины с локальной степенью, равной нулю, то трассировка двух групп цепей возможна на 1, либо на I +1 треках (l = max {l1 ,l2}).
Приведенные выше утверждения позволяют уменьшить область оптимизации для произвольных классов цепей. Уменьшение области оптимизации повышает вероятность попадания в область допустимых решений. Область оптимизации будет уменьшаться за счет отсечения вариантов трассировки, которые не удовлетворяют системе ограничений:
Q': х; > xj,i = 1,2,...,N, j: vj e a*v [v; ], (4)
Xi > Xj,i = 1,2,...,N, j: vj e CTv [v; ], (5)
x; - Xj * 0, i = 1,2,..., N, j : v* естн [v; ],
а область допустимых решений будет оставаться неизменной. Таким образом, если мы найдем хотя бы одну точку из области q , которая удовлетворяет всем ограничениям, то тем самым решим задачу 100% трассировки, а затем необходимо минимизировать функ-
n
цию F(x) = ^ i; (x; ). Допустимое множество решений задачи [1] не изменится при замене i=1
графа sv любой его степенью. При этом в графе вертикальных ограничений появляются дополнительные ребра. Ограничения (4) и (5) запишутся в виде:
xi > xj,; = 1,2,...,N, j:vj eaVN[v;] , (6)
xi < xj, ; = 1,2,...,N, j: Vj e ст^v;]. (7)
Определим протяженность I(v;, Vj) по аналогии с работой [2] как путь наибольшей
длины из вершины V; в Vj, тогда ограничения (6) - (7) можно еще более усилить, переписав в виде:
x; > xj, +e(Vj, V;), ; = 1,2,...,N, j: Vj ест>;], (8)
x; < xj, +I(v;, Vj), ; = 1,2,...,N, j: Vj e ctN[V;]. (9)
Определим число протяженности для вершин V; как e- (v; ) - максимальный простой путь с конечной вершиной в V;, и e + (v;) —максимальный простой путь с начальной
вершиной в V; в графе стv , тогда область q можно уменьшить, определив множества A; следующим образом:
Ai = {e-(v;) +1, e-(v;) + 2, ...,M-e+ (v;)}, (10)
или, что то же самое, записать явные ограничения на значения переменных:
e-(v;) +1 <x; <M-e+(v;).
Таким образом, задача [1] может быть записана в виде:
X* = arg min F(X)
xeQ'cQ '
(11)
N
F(x) = E Ii (xi), (12)
i=1
Q':e-(vi) +1 <xi < M-e+ (vi), (13)
Q': x¡ > Xj + e(vj, v¡), i = 1,2,...,N,: Vj e G^], (14)
x¡ < Xj - e(Vi, Vj), i = 1,2,...,N,: Vj e GN[Vj] , (15)
Xi - Xj * 0, i = 1,2,..., N, j: V e Gh ^]. (16)
Дополнительной информацией о задаче является то, что множество вершин V разбито на m подмножеств (m вертикалей), обладающих определенными свойствами. Таким образом, имеется m подмножеств: Vi < V, i = 1,2..., m .
Свойства подмножеств:
1) соответствующие подмножества (подграфы) графа горизонтальных ограничений G н являются полными:
Gн[Vj]Vi = ViWjVVj e Vi, i = 1,2,...,m ; (17)
2) «непрерывность» цепей
Vj e Vi1, Vj eVi2 (i1 < i2) ^ Vj e Vi, i1 <i < i2; (18)
3) «соседние» подмножества могут отличаться не более чем двумя элементами:
Card(Vi1 /Vi1 Vi2)) < 2, Vi1,i2 : -i^ = i; (19)
4) если подмножество отличается от «соседнего» двумя элементами, между ними должно существовать ребро в графе вертикальных ограничений:
Card(Vi1 /Vi2 ) = 2 ^ Vi e HvK ] либо Vj e Hv [Vi ]; (20)
Vi1,i2 : |i1 -i2 = 1, {vi,vj} = Vi1 /Vi2 .
Утверждение 4. Если для некоторого подмножества вершин одной вершин мощность множества допустимых значений переменных равна мощности данного подмножества вершин и при исключении из него некоторой вершины мощность множества допустимых значений уменьшается на единицу, то для любого допустимого решения исходной задачи [1] значение переменной, соответствующей данной вершине, должно быть равно данному исключаемому значению. Другими словами, формально:
31 < k < m, Vk < Vk : Card {UAj} = CardVk и
j:VjeVk
3Vs e Vjk :Card{AS/UAj} = 1 ^xs = * A^/UAj .
j:Vje(Vk / Vs) j:Vj e(Vk /Vs)
Доказательство. Исключим из A^ указанное значение: As = As /{As/UAj} ,
j :Vj e (Vk /Vs). Тогда Card {UAj} < CardVk и, следовательно, 3Vp ,Vq e Vk, p * q ,
j:VjeVk)
p * q : xp = xq . Но, согласно (17), Vp e GH [Vq ] и, следовательно, согласно (18) xp * xq .
Приходим к противоречию. Утверждение 4 доказано.
Следствие 4. Если для некоторой вертикали мощность соответствующего подмножества вершин равна М и существует единственная вершина с нулевым положительным либо отрицательным числом протяженности, то значение соответствующей переменной в любом допустимом решении задачи должно равняться 1 в случае нулевого положительного числа протяженности.
Следствие 5. Для любой вертикали мощность подмножества вершин не может превышать М.
Утверждение 5. Если мощность подмножеств вершин для двух соседних вертикалей равна М и подмножества отличаются друг от друга одной вершиной, то в любом допустимом решении задачи значения переменных, соответствующие этим различным для подмножества вершинам, должны быть равны. Формально:
31 < k < m: CardVk = CardMk+1 = M, Card{Vk /Vk+J = 1,
vi = Vk/
Доказательство:
vi = Vk /Vk+l, vj = Vk+1/ Vk ^ xj = xj.
** т/j I I
xi,xj e IM /xs Cardi IM/Uxs U 1 ^ xi = x*
s:Vs eVk ПVk+1 I s:Vs eVk П Vk+1
Утверждение 5 доказано.
Утверждение 6. Если мощность подмножеств вершин для двух соседних вертикалей равна M и подмножества отличаются друг от друга двумя вершинами, то в любом допустимом решении задачи значения переменных, соответствующие этим различным для подмножеств вершинам, должны быть попарно равны, причем состав пар однозначно определяется направлением ребер в графе вертикальных ограничений.
Формально: 3 1 < k < m: Card Vk = Card Vk+1 = M, Card {Vk / Vk+1} = 2,
{vib vi2 } = Vk/Vk+1 , vi1 eov [vi2 .1 {vj2 , vj2 } = Vk+1 /Vk,
[I j j j j j j
vj2 = *h , = Xj2 , X > Xj .
Доказательство:
xi1, xi2, Xj1, Xj2 e im / xs Cardi IM / xS 1 = 2 .
s:VseVk nVk+1 I s:VS eVk П Vk+1
Согласно (20) и (14), (15) x* Ф xj2, xjj1 Ф x*2 . Если vi1 e cv [vi2 j и vj1 eo, [vj2 ], то
xj1 > xj2 , xjj1 > xj2, следовательно, x* = xjj, x*2 = x*2 . Утверждение 6 доказано.
Следствие 6. Используя утверждения 4 и 5, можно провести коррекцию соответствующих множеств Ai. В терминах условий утверждения 6 данная коррекция запишется: max{e-(vi),e-(vj)} +1 < xi,xj<M-max{e+ (vi),e+ (vj)}. В терминах условий утверждения 6 данная коррекция запишется:
max{e-(v^),e-(^)} +1 <xi1, xj1 < M-max{e+ (vi1 ),e+ (vj1)}, max{e- (vi2 ),e- (vj2)} +1 < xi2, xj2 < M - max{e+ (vi2 ),e+ (vj2)}. Утверждение 7. Если для двух вершин ОГВГО выполняется условие e+ (vi) = e+ (vj) и они связаны неориентированным ребром, то либо xi > xj +1, либо xj > xi +1.
Доказательство. Пусть простые пути от вершин vi и vj не пересекаются. Тогда
вершинам с одинаковым значением e+(vk) можно присвоить одинаковые метки, если они
не связаны ребром. В противном случае им присваиваются различные метки.
Следствие 7. Рассмотрим два простые пути в ГВО, у которых только первая и последняя вершины общие. Пусть длина первого пути больше второго и равна М. Возьмем
предпоследнюю вершину vj второго пути и найдем непомеченную вершину первого пути, не связанную с данной вершиной ребром и для которой справедливо
min
e+(vj) - e+ (v k)
к = I, М
Присвоим обеим вершинам одинаковые пометки. Выполним аналогичные операции для остальных вершин второго пути. Количество непомеченных вершин второго пути показывает, насколько необходимо увеличить количество треков М, чтобы осуществить 100 % трассировку двух цепей. 64
Утверждение 8. Если для двух вершин vj и vj ОГВГО, не связанных ребром, выполняются условия
(Он [Vj ] и ан [Vj ]) n Vs = Vs, Card Vs = M, s = j^, то этим вершинам нельзя присваивать одинаковые метки.
Доказательство. Так как CardVS = M, то это говорит о том, что существует вертикаль в канале шириной М, через которую проходит М цепей, образующих полный подграф в графе горизонтальных ограничений. Этим цепям необходимо и достаточно М пометок.
Цепи, соответствующие вершинам Vj и vj, не входят в множество Vs . Если мы дадим
вершинам Vj и vj одинаковую метку, то это соответствует тому, что в множестве Vs вводится дополнительная вершина. Отсюда следует, что М пометок уже недостаточно для раскраски множества Vs .
Выводы
1. Показано, что важна структура задачи трассировки, т.е. показаны возможности ее упрощения и сведения к менее сложным задачам.
2. Исследована структура системы ограничений для задачи трассировки многокристальных микросборок. Показано, что от вида ограничений можно выбрать подходящий алгоритм для решения задачи трассировки, либо значительно уменьшить область оптимизации задачи проектирования топологии.
3. Данная работа доказывает необходимость создания общих (единых) методологических основ для проектирования и организации оптимального функционирования САПР конструктивных узлов и устройств электронной аппаратуры широкого функционального назначения на базе методов синтеза проектных и конструкторских решений, использующих решающие правила.
Научная новизна. Обоснована необходимость научного исследования структуры задач для более эффективного их решения в области проектирования и разработки микроэлектронных устройств на базе методов логического синтеза, необходимость создания методологических основ для проектирования и организации оптимального функционирования САПР.
Практическое значение. Рассмотренные методы предназначаются для разработки многофункциональных устройств различного назначения. Разработанные методы оптимизации можно применить при проектировании систем автоматизированного проектирования.
Список литературы: 1. Семенец В.В., Иванов В.Г. Анализ структуры задачи проектирования топологии микроэлектронных устройств / Радиоэлектроника и информатика. 2007. № 3. С. 112-117. 2. Оре О. Теория графов. М.: Наука, 1980. 336 с. 3. КристофидесН. Теория графов. Алгоритмический подход / Пер. с англ. М.: Мир, 1978. 432 с. 4. СелютинВ.А. Автоматизированное проектирование топологии БИС. М.: Радио и связь, 1983. 112 с. 5. ШалтянисВ.Р. Анализ структур задач оптимизации. Вильнюс: Институт математики и кибернетики АИ Литовской ССР, 1989. 120 с.
Поступила в редколлегию 06.08.2008 Семенец Валерий Васильевич, д-р техн. наук, профессор, первый проректор ХНУРЭ. Научные интересы: САПР, логический синтез. Увлечения и хобби: футбол, бильярд, рыбалка. Адрес: Украина, Харьков, 61166, пр. Ленина, 14, тел. 702-13-64.
Иванов Виталий Геннадьевич, соискатель каф. БМЭ ХНУРЭ. Научные интересы: САПР, логический синтез. Увлечения и хобби: футбол, охота. Адрес: Украина, 61166, Харьков, пр. Ленина, 14, тел. 702-13-64.