Научная статья на тему 'МЕТОД ГЛОБАЛЬНОЙ ТРАССИРОВКИ ЦЕПЕЙ СУБМИКРОННЫХ СБИС, ОСНОВАННЫЙ НА ИСПОЛЬЗОВАНИИ СЕМЕЙСТВА ДЕРЕВЬЕВ ШТЕЙНЕРА'

МЕТОД ГЛОБАЛЬНОЙ ТРАССИРОВКИ ЦЕПЕЙ СУБМИКРОННЫХ СБИС, ОСНОВАННЫЙ НА ИСПОЛЬЗОВАНИИ СЕМЕЙСТВА ДЕРЕВЬЕВ ШТЕЙНЕРА Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
56
9
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ГЛОБАЛЬНАЯ ТРАССИРОВКА / СБИС / ДЕРЕВО ШТЕЙНЕРА

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Заглядин Глеб Георгиевич

Описан метод решения задачи глобальной трассировки сигнальных цепей СБИС, основанный на использовании семейств деревьев Штейнера для каждой цепи. Метод позволяет минимизировать как длину цепей, так и локальную коммутационную плотность. Представлены результаты исследований данного методаThe new approach for VLSI signal nets global routing has been suggested; the Steiner trees set-based method and the results of its investigations have been presented.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «МЕТОД ГЛОБАЛЬНОЙ ТРАССИРОВКИ ЦЕПЕЙ СУБМИКРОННЫХ СБИС, ОСНОВАННЫЙ НА ИСПОЛЬЗОВАНИИ СЕМЕЙСТВА ДЕРЕВЬЕВ ШТЕЙНЕРА»

СХЕМОТЕХНИКА И ПРОЕКТИРОВАНИЕ

УДК 621.3.049.771.16

Метод глобальной трассировки цепей субмикронных СБИС, основанный на использовании семейства деревьев Штейнера

Г.Г.Заглядин

Национальный исследовательский университет «МИЭТ»

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

Ключевые слова: глобальная трассировка, СБИС, дерево Штейнера.

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

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

В связи с увеличением влияний эффектов «глубокого субмикрона» (cross-talk, IR-drop) на работоспособность нанометровых СБИС возникает необходимость учитывать их непосредственно на этапах размещения и трассировки. Коррекция паразитных эффектов оптической близости (Optical Proximity Correction - OPC) частично происходит путем добавления принципиально новых конструкторско-технологических ограничений, которые должны быть соблюдены в процессе топологического проектирования. Также вводятся дополнительные требования по максимальной и минимальной плотности топологии, что должно обеспечить качество химико-механической полировки.

Одна часть рассмотренных проблем требует применения комплексного подхода, другая может быть решена на этапе трассировки. Задача трассировки из-за ее большой вычислительной сложности делится на глобальную [1] и детальную. При проведении глобальной трассировки формируется эскизная топология цепей. Затем происходит поиск конечного решения в виде набора трасс на этапе детальной трассировки.

© Г.Г.Заглядин, 2011

Генерация семейства деревьев Штейнера

Основными задачами глобальной трассировки являются сокращение общей длины цепей, удовлетворение временным ограничениям и обеспечение 100%-ной трассируе-мости схемы. Сокращение длины цепей оказывает влияние на величину задержек и потребляемой мощности, также возможно появление перекрестных помех (cross-talk). Локальная плотность межсоединений не только влияет на трассируемость схемы, но и затрагивает распределение выделяемого тепла на проводниках, возможность устранения перекрестных помех и электромиграции.

Традиционно поиск решения осуществляется в два этапа: на первом строится начальное решение, на втором - выполняется оптимизация. В процессе построения начального решения все цепи классифицируются на 2-терминальные, для которых используются алгоритмы монотонной и шаблонной трассировки [2], и многотерминальные, для которых применяется FLUTE [3]. Второй этап, как правило, сводится к разбиению и перетрассировке отдельных межсоединений, для этого используются алгоритмы лабиринтной (A*-search [4]), шаблонной и монотонной трассировки. Качество получаемых решений очень сильно зависит от структуры деревьев Штейнера.

Описание подхода. Суть предлагаемого подхода [5] состоит в искусственном ограничении качества оптимизации по одному из критериев, чтобы расширить возможности для оптимизации по другим критериям. Для каждой цепи строится не одно, а множество (семейство) решений, используются семейства SMT (Steiner Minimum Tree) с различной топологией. Это позволяет учитывать несколько критериев непосредственно в процессе синтеза решения, а не осуществлять постоптимизацию.

Для обеспечения гибкости предложенного подхода работа выполняется в несколько этапов (рис.1), каждый из которых оперирует семейством деревьев Штейнера.

Для получения семейства SMT генерируется множество остовных деревьев, отклонение стоимости каждого из деревьев от стоимости минимального не превышает значения заданного параметра Acost. При

последующей оптимизации по другим критериям поиск решений проводится только в пределах полученного множества SMT.

За основу взят алгоритм Краскала. Для генерации семейства остовных деревьев проводится поиск ребер-кандидатов, которые переставляются в начало списка ребер [5]. Временная сложность разработанного алгоритма составляет o(n2lognj, где n - количество терминалов цепи.

Если в семействе встречаются два дерева с близкой топологией, то одно из них исключается. Этот процесс осуществляется парным сравнением всех деревьев. Для расчета близости деревьев вводится сетка из горизонтальных и вертикальных сечений. D(xj и D(yj отображают количество попадающих под сечение ребер для столбцов и строк соответственно. Значение локальной

плотности в точке (х, у) равно: Drv = D(x)+ D(y). Для Рис. 1. Этапы выполнения , ^

гжбажшй трассировки пары деревьев (ц1з j разница локальной коммутаци-

Модуль I

Модуль п

Семейство SMT

Фильтрация

Модуль 1

Модуль т

Семейство SMT

Оптимизация

Модуль 1

Модуль к

онной плотности равна: ADxy = )- Dxy(\i2} = |DXj "

Метрика близости деревьев имеет вид

Pfo,^) = Р(ц2,^)=XEADxy2 .

X у

Обоснование критерия представлено в [5]. Для сравнения каждой пары деревьев

г (г -1)

необходимо рассмотреть сочетаний, где г - количество деревьев в семействе,

поэтому временная сложность полученного алгоритма составляет о(2).

Для выбора конкретной топологии цепи из семейства SMT применим итерационный метод перестановки элементов, лежащий в основе ряда алгоритмов декомпозиции [7], псевдокод которого имеет вид

do {

}

update _costs() for nets in order_nets(){ swap()

update_local_costs ()

}

while (profit_exists())

Функция update_SMT_costs() инициализирует список значений целевой функции для каждого элемента. В дальнейшем перестановки осуществляются при помощи процедуры swap(), функция order_nets() определяет порядок следования элементов. Обновление значений целевой функции для затронутых элементов производится функцией update local costs (). Прекращение работы происходит с помощью функции profit_exists().

За основу выбран алгоритм Кернигана - Лина. В нем необходимо на каждой итерации определять, какое дерево будет «кандидатом» на перестановку от определенного семейства. При его модификации введена функция стоимости выбранного решения [6]. Она отображает равномерность загруженности коммутационного пространства и выглядит следующим образом:

Xfo,^) = Х(^2,^i ) = ZZ(dS -D% -D^)

(1)

x y

где DXyg

среднее количество дискретных

сечений сетки по осям.

Временная сложность одной итерации полученного алгоритма составляет 0(n • log n • t • k), где t - количество деревьев в семействах деревьев Штейнера; k - шаг регулярной сетки загруженности. Алгоритм оптимизации, как и алгоритм Кернигана -Лина, обладает свойством сходимости (рис.2).

2

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

С открытого интернет-ресурса «opencores.org» [8] выбран набор тестовых примеров (табл.1) для исследования разработанного метода. Для каждого блока последовательно проводились логический синтез, планировка кристалла, размещение элементов, глобальная и детальная трассировка, верификация.

Таблица 1

Описание тестовых схем

Номер

тестово- Название Количество Количество Функция

го при- цепей элементов

мера

1 sin 124 113 Генератор синусоидального сигнала

2 fht 221 198 Быстрое преобразование Адамара, 8 бит

3 keypad_scanner 409 366 Сканирование цифровой клавиатуры

4 hw_looping 475 453 Зацикливание аппаратного обеспечения

5 lem1 95 485 387 Дополнение набора команд

6 arbgen 641 566 Генератор сигналов произвольной формы

7 wb_lcd 654 599 Контроллер буквенно-цифрового индикатора

8 Keyboard_controller 721 631 Контроллер клавиатуры

9 ptc 764 582 ШИМ, таймер, счетчик

10 plasma 846 673 32-битный RISC

11 openFPU64 940 879 Математический сопроцессор

12 ClaiRISC 1275 1021 12-битный микроконтроллер PIC

13 quadratic_func 1396 1345 Полином 2-й степени

14 cowgirl 1819 1404 Процессор

15 spi_top 2332 2032 SPI-микроконтроллер

В табл.2 представлены результаты исследований. В качестве эталона применялась коммерческая САПР, реализацией метода является прикладное ПО «GraЫa». Для измерения загруженности использовалось количество сегментов, проходящих через сечения регулярной сетки расчета целевой функции (1). Среднее и максимальное количество сегментов представлено как средняя и максимальная загруженность соответственно. Как видно из табл.2, разработанный метод показывает значительное улучшение трасси-руемости схем, понижая при этом среднюю и максимальную загруженность коммутационных областей.

Таблица 2

Сравнение результатов метода и коммерческой САПР

Номер тестового примера Суммарная длина цепей, 10-9 м Средняя загруженность Максимальная загруженность

Эталон ОгаЫа А, % Эталон, шт ОгаЫа, шт А, % Эталон, шт ОгаЫа, шт А, %

1 3236300 3346863 3,4 93,0143 71,519 -23,1 300 208 -30,7

2 4653795 4662063 0,2 140,8 102,267 -27,4 360 269 -25,3

3 9529665 9522580 -0,1 241,056 176,846 -26,6 552 395 -28,4

4 3886175 3859669 -0,7 77,0701 61,5233 -20,2 418 296 -29,2

5 8764315 8977101 2,4 223,108 166,324 -25,5 467 363 -22,3

6 12478995 12402071 -0,6 320,263 221,421 -30,9 776 518 -33,2

7 12173640 12174057 0,0 312,605 220,887 -29,3 782 525 -32,9

8 28592360 28149071 -1,6 503,905 311,087 -38,3 974 604 -38,0

9 19376540 19571982 1,0 365,811 255,182 -30,2 798 576 -27,8

10 21051405 21261641 1,0 382 263,043 -31,1 840 596 -29,0

11 21794795 21363467 -2,0 472,955 307,727 -34,9 1066 666 -37,5

12 25861780 26174502 1,2 445,042 303,905 -31,7 890 568 -36,2

13 37205715 36245691 -2,6 678,422 418,118 -38,4 1347 749 -44,4

14 48936555 49443678 1,0 651 438,616 -32,6 1090 772 -29,2

15 47324930 48122918 1,7 692,033 490,267 -29,2 1206 818 -32,2

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

На рис.3 представлено изменение загруженности для каждого тестового примера. Серым цветом отмечена средняя загруженность, черным - максимальная, в среднем улучшение составило 29,96 и 31,75% соответственно. Однако в действительности улучшение составило менее 30%, поскольку эталонная САПР дополнительно производила оптимизацию рабочей частоты, чего не было у исследуемой системы.

Одновременно с распределением загруженности коммутационного пространства разработанный метод оказывает влияние на суммарную длину цепей. Для того же тестового набора данный параметр в среднем не увеличился (рис.4). Следует отметить, что изменения данного критерия не носят закономерный характер, поэтому разработанный метод в ряде случаев может приводить к уменьшению суммарной длины цепей при значительном улучшении трассируемости.

Рис.3. Уменьшение загруженности коммутационного пространства

Рис. 4. Изменение суммарной длины цепей

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

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

1. Moffitt M.D., Roy J.A., Markov I.L. The coming of age of (Academic) global routing // Intern. Symp. on Physical Design (ISPD, Portland, Oregon, 2008). - 2008. - P. 148-155.

2. Alpert C.J., Mehta D.P., Sapatnekar S.S. Handbook of Algorithms for VLSI Physical Design Automation. - N.Y.:CRC Press. - 2008. - P. 148-155.

3. Chris Chu, Yiu-Chung Wong. Fast and accurate rectilinear Steiner minimal tree algorithm for VLSI design // Proc. Intl. Symp. on Physical Design. - 2005. - P. 28-35.

4. Tessier R. Negotiated A* Routing for FPGAs // Proc. of the 5-th Canadian Workshop on Field-Programmable Devices, 1998. - URL: www.ecs.umass.edu/ece/tessier/fpd98.pdf

5. Заглядин Г.Г., Сырцов И.А., Школа А.В. Алгоритм синтеза множества остовных деревьев для выполнения глобальной трассировки заказных СБИС // Изв. вузов. Электроника. - 2010. - № 5. -

6. Заглядин Г.Г., Сырцов И.А. Глобальная трассировка заказных СБИС с использованием множества остовных деревьев // Естественные и технические науки. - 2010. - Август. - С. 322-326.

7. Naveed A. Sherwani Algorithms for VLSI Physical Design Automation. - Kluwer Academic Publishers, Norwell, MA, 1995. - P. 608.

8. http://opencores.org

менная сложность составила

Литература

С. 36-40.

Статья поступила 24 декабря 2010 г.

Заглядин Глеб Георгиевич - аспирант кафедры проектирования и конструирования интегральных микросхем МИЭТ. Область научных интересов: САПР, алгоритмы топологического проектирования. E-mail: zaglyadin.gg@gmail.com

Л

Вниманию читателей журнала «Известия высших учебных заведений. Электроника»

Оформить годовую подписку на электронную версию журнала можно на сайте Научной Электронной Библиотеки:

www.elibrary.ru

J

i Надоели баннеры? Вы всегда можете отключить рекламу.