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

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

CC BY
33
5
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
критический путь / программируемая вентильная матрица / алгоритм имитации отжига / генетический алгоритм / проблема размещения / проблема маршрутизации. / сritical path / parametric method / field-programmable gate array / Simulated Annealing / genetic algorithm / placement problem / routing problem.

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Нгуен Минь Хонг, Нгуен Хыу Шон

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

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

SOLUTION OF PROBLEMS OF DESIGNING DIGITAL SCHEMES OF FPGA USING GENETIC ALGORITHM

this article examines the cost function of the block placement problem in the design of FPGA. Research results show that the traditional cost function achieves a minimum value, but does not assure a minimum delay of critical path. Based on this, the article proposes to use the routing algorithm a cost function to improve placement problem with optimal critical path latency. Using this new cost function, the Genetic Algorithm gives better results than the Simulated Annealing algorithm. The article investigates the cost function of circuit placement algorithms and investigates the cost function of circuit placement algorithms. The article investigates the cost function of algorithms for placing circuits and proposes to use the wiring algorithm as a cost function. Simulation results show that the quality of the layout is significantly improved by changing the cost function.

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

РЕШЕНИЕ ЗАДАЧ ПРОЕКТИРОВАНИЯ ЦИФРОВЫХ СХЕМ ППВМ С ИСПОЛЬЗОВАНИЕМ ГЕНЕТИЧЕСКИХ АЛГОРИТМОВ Нгуен Минь Хонг1, Нгуен Хыу Шон2

1Нгуен Минь Хонг - кандидат технических наук, старший преподаватель; 2Нгуен Хыу Шон - кандидат технических наук, декан, факультет технического управления, Государственный технический университет им. Ле Куй Дона, г. Ханой, Социалистическая Республика Вьетнам

Аннотация: в данной статье исследуется функция стоимости задачи размещения блоков при проектировании ППВМ. Результаты исследований показывают, что традиционная функция стоимости достигает минимального значения, но не обеспечивает минимальную задержку критического пути. Исходя из этого, в статье предлагается использовать алгоритм соединения в качестве функции стоимости для улучшения размещения с оптимальной задержкой критического пути. C использованием этой новой функции стоимости, генетический алгоритм (англ. Genetic Algorithm) дает лучшие результаты, чем с использованием алгоритма имитации отжига (англ. Simulated Annealing). В статье проведено исследование функции стоимости алгоритмов размещения схем и предлагается использовать алгоритм вайринга в качестве функции стоимости. Результаты моделирования показывают, что качество макета значительно улучшается за счет изменения функции стоимости.

Ключевые слова: критический путь, программируемая вентильная матрица, алгоритм имитации отжига, генетический алгоритм, проблема размещения, проблема маршрутизации.

SOLUTION OF PROBLEMS OF DESIGNING DIGITAL SCHEMES OF FPGA

USING GENETIC ALGORITHM Nguyen Minh Hong1, Nguyen Huu Son2

1Nguyen Minh Hong - PhD in Technical Sciences, Senior Lecturer; 2Nguyen Huu Son - PhD in Technical Sciences, Dean, FACULTY OF TECHNICAL CONTROL, LE QUY DON UNIVERSITY OF SCIENCE AND TECHNOLOGY, HANOI, SOCIALIST REPUBLIC OF VIETNAM

Abstract: this article examines the cost function of the block placement problem in the design of FPGA. Research results show that the traditional cost function achieves a minimum value, but does not assure a minimum delay of critical path. Based on this, the article proposes to use the routing algorithm a cost function to improve placement problem with optimal critical path latency. Using this new cost function, the Genetic Algorithm gives better results than the Simulated Annealing algorithm. The article investigates the cost function of circuit placement algorithms and investigates the cost function of circuit placement algorithms. The article investigates the cost function of algorithms for placing circuits and proposes to use the wiring algorithm as a cost function. Simulation results show that the quality of the layout is significantly improved by changing the cost function.

Keywords: спtical path, parametric method, field-programmable gate array, Simulated Annealing, genetic algorithm, placement problem, routing problem.

L ВВЕДЕНИЕ

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

Процесс проектирования ППВМ обычно состоит из трех этапов: синтез схемы, реализация проектирования, загрузка битовую строку ППВМ [2]. В этой статье исследуется второй этап процесса проектирования, который включает четыре этапа: упаковка, размещение, маршрутизация и генерация битовой строки (генерация битового потока).

Из этих шагов, размещение является наиболее важным шагом, в котором определяется конкретное расположение программируемых логических блоков (ПЛБ) и блоков ввода/вывода (I/O) на ППВМ. В этой статье представляются задача размещения и ее метод решения, результаты опросов.

На рисунке 1 представлена структура ППВМ со сконфигурированной схемой.

II DD

II II

ID IE II DD

Блок I/O

•ПЛБ

: I : I

II DD

□ ■ 0 □ ■ ]

Z □ 0 □ □ D

□ D 1 ] ап

II DD

Сконфигурированная схема

Рис. 1. Структура ППВМ с четырьмя установленными ПЛБ и блоками ввода/вывода

II. ЗАДАЧА РАЗМЕЩЕНИЯ ППВМ

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

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

В настоящее время существует множество различных методов для решения задачи размещения, такие как: алгоритм имитации отжига (АИО) [4-7], генетические алгоритмы [8-12] и аналитические методы [1316]. В том числе, АИО является наиболее широким применением алгоритма для решения задачи размещения при проектировании ППВМ [17]. В результате исследования [12] показано, что АИО является более совершенным алгоритмом по сравнению с ГА при решении задач размещения в проекте ППВМ. В исследованиях [13, 18, 19] показано, что конфигурация структуры ППВМ, полученная методом АИО, имеет качественные связанные параметры, чем с использованием аналитического метода.

С другой стороны, функция стоимости алгоритма размещения зависит от структуры ППВМ и процесса требуемой оптимизации. Маршрутизация является одной из целей процесса размещения, и имеет важную роль для оценки возможности перегрузки (сколько линий находится в канале). Следовательно, функция стоимости имеет необходимость разделить на затраты, связанные с маршрутизацией [5]. В большинстве случаев, необходимо минимизировать задержку в задаче размещения. Данные задержки имеют возможность моделировать с точки зрения компонентов временных затрат [6]. При этом, функция стоимости, используемая для оптимизации критического пути, имеет следующий вид:

Cost wire,time = ^.ti min g cos t + (l - X).wire _ cos t (1)

Где: time_cost - нормированный коэффициент затрат времени; wire_cost - нормированный коэффициент стоимости маршрутизации; X - коэффициент гармонизации.

В работе [6] представлен пример с использованием традиционной функции стоимости: при X = 0,5, имеется наилучшая гармонизация между перегрузкой и стоимостью пути.

В последнее время, традиционная функция стоимости широко использовалась, что подтверждается ее правильность и оптимальность. Однако, возникает вопрос о степени точности и возможности улучшения функции стоимости. В работе [21] представлен пример обследования затрат с использованием метода размещения VTR и инструмента соединения со схемой s1238 из стандартного эталонного набора данных MCNC. На рисунке 2 представлены критический путь и функция стоимости после соединения для схемы s1238 при X = 0,5 и X = 1.

Задержка критического пути

Стоимость модели

a) Я = 0,5

Задержка критического пути

Стоимость модели

b) Я = 1

Рис. 2. Критический путь, полученный для различных стоимостных моделей после соединения и с использованием

инструмента VTR в схеме s1238

Из рисунка 2 видно, что значение функции стоимости уменьшается, не означает, что критический путь также уменьшается. То есть: функция стоимости имеет значение 0,26, соответствующее задержке критического пути со значением 4,44 (рисунок 2а). Однако, в другом примере, функция стоимости имеет значение 0,31, но задержка критического пути составляет 4,35 (меньше, чем задержка критического пути, когда функция стоимости имеет значение 0,26). Таким образом, алгоритм оптимального размещения функции стоимости не обеспечивает оптимальность критического пути. В тех же исследованиях были выполнены обзоры схем planet и mm30a на основе стандартного эталонного набора данных MCNC. Результаты исследований также показывают о том, что не имеется корреляция между функцией стоимости и задержкой критического пути.

Ш. НОВОЕ НАПРАВЛЕНИЕ ДЛЯ РЕШЕНИЯ ЗАДАЧИ РАЗМЕЩЕНИЯ

Постоянное улучшение вычислительной мощности компьютера позволяет напрямую реализовать алгоритм маршрутизации. Используется алгоритм маршрутизации инструмента VTR в качестве функции стоимости в алгоритме размещения. Этот алгоритм называется VTR-R.

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

При этом, используется ГА вместо АИО для уменьшения количеств вычислений функции стоимости. Этот алгоритм размещения на основе TA называется ГА-R. Для алгоритма АИО количество вычислений функции стоимости вычисляется по следующему выражению [22]:

EvalSÁ = {num _ gen + í).num _ blocks13333 (2)

где: num_gen - количество поколений, зависящее от критерия остановки алгоритма. Критерий остановки

cosí

удовлетворяется, когда T < 0,005,-

num_ of _ nets

количество сеток, присутствующих в цепи.

где: T - температура АИО, num_of _nets

num blocks- количество блоков, присутствующих в схеме (блоки ПЛБ и блоки ввода/вывода).

Температура обновляется в соответствии с выражением: Tnew = a. Told, где а - параметр, зависящий от новых конфигураций размещения блока ПЛБ в поколении, и делящийся на максимальное количество перемещений блока [5].

Из уравнения (2) видно, что количество оценок функции стоимости не является линейной функцией по количеству блоков, присутствующих в схеме. С другой стороны, для ГА количество оценок функции стоимости зависит от количества поколений (num_gen) и размера популяции (pop_size). То есть, количество оценок функции стоимости не зависит от количества блоков, присутствующих в схеме, и определяется по формуле:

EvalGA = num _ gen pop _ size (3)

Кроме того, алгоритм АИО, используемый в работе [5], может выполняться только на одном вычислительном потоке и новое решение зависит от результата предыдущего решения. Однако, процесс вычисления с использованием алгоритма ГА может выполняться параллельно [23, 24], и каждый элемент вычисляется независимо в отдельном потоке. Например, если имеются 100 элементов, то все элементы вычисляются одновременно в 100 потоках. При этом, время выполнения алгоритма зависит только от количества поколений.

IV. МЕТОД ИССЛЕДОВАНИЯ

Основная цель исследования в статье является изучением алгоритма размещения (не алгоритма маршрутизации). При этом, ширина канала устанавливается как фиксированное значение [25], остальные параметры также устанавливаются как фиксированное значения с помощью инструмента VTR, адаптированного из Altera Stratix IV [26]. Используется блок переключения типа Уилтона [27]. Исследуемые параметры ППВМ приведены в таблице 1 [22].

Таблица 1. Исследуемые параметры ППВМ

Параметр Описание Значение

W Ширина канала 200

N Количество BLE/CLB 10

К Входное значение BLE 6

L Длина 1 трека 4

F ■ 1 cm Отношение треков, подключенных к одному входу 0,15

Fcout Отношение треков, подключенных к одному выходу 0,1

Fs Блок коммутатора 3 (Wilton)

Характеристики исследуемых схем алгоритма размещения приведены в таблице 2. Данные исследуемые схемы представлены в формате BLIF и отображены в блоки ПЛБ с помощью инструмента \Раск [28, 29].

Таблица 2. Характеристики и размеры схем для исследования алгоритма размещения

Схема LUT FF LB I/O Net Размер

styr 238 5 15 20 105 4x4

planet 266 6 17 27 127 5x5

s1238 292 18 18 29 148 5x5

vda 253 0 19 56 176 5x5

daio-rec 311 81 19 62 230 5x5

mm30a 294 90 21 64 230 5x5

ecc 291 109 22 26 178 5x5

ex4p 148 0 22 112 206 5x5

C2670 214 0 15 221 305 7x7

rot 242 0 17 242 293 8x8

x3 255 0 20 234 281 8x8

i7 103 0 11 266 266 9x9

frg2 347 0 26 282 342 9x9

Алгоритм размещения может быть реализован одновременно для блоков ПЛБ и блоков ввода/вывода. Кроме того, имеется возможность фиксировать заданные блоки ПЛБ или блоки ввода-вывода, а затем реализовать задачу размещения для оставшихся блоков. Для уменьшения сложности задачи, в данной статье фиксируются блоки ввода-вывода и решается только задача размещения блоков ПЛБ.

Конфигурация о положении блоков ввода/вывода устанавливается в соответствии с результатами работы алгоритма ПЛБ со следующими параметрами: начальная температура in.it _tem.pera.ture = 20; среднеквадратичное отклонение std._d.ev; рассчитанное на основе вариации функции стоимости случайно движущихся блоков.

После изменения X от 0 до 1, результат показывает, что при X = 0,5 получено наилучшее значение задержки критического пути.

Таким образом, для алгоритма АИО с традиционной функцией стоимости выбирается X = 0,5. Алгоритм 1 описывает этапы реализации алгоритма ГА-R. В алгоритме используются популяция из 2 элемента, одноточечный замкнутый гибридный оператор и оператор мутации, основанный на перестановке ПЛБ. В алгоритме ГА требуется установить количество поколений, вероятность гибридизации (Pc), вероятность мутации (Pm). Количество поколений было выбрано для получения лучшего количества оценок функции стоимости по сравнению с алгоритмом АИО. Вероятность гибридизации и вероятность мутаций выбираются методом локальной одночленной выборки (LUS): Pm = 0,04 и Pc = 0,5 [30].

Алгоритм 1: Алгоритм ГА-R_

Вход: Файл «netlist» для схемы, параметры III IBM. параметр ГА.

Выход: Размещение схемы;

1: Ввод структур ППВМ и схемы;

2: Размещение произвольной схемы;

3: Определение функции стоимости;

4: Сохранение лучшего элемента;

5: while «алгоритм не закончен» do

6: for «популяция» do

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

7: выбор двух случайных элементов из популяции;

8: установка parentl из лучшего из двух выбранных элементов;

9: выбор двух случайных элементов из популяции;

10: установка parent2 из лучшего из двух выбранных элементов;

11: if функция нормального распределения (0.1) < Рс then

12: гибридизация parent 1 и parent2;

13: сохранение двух потомков в новой популяции;

14: else

15: копирование parent1 и parent2 в новой популяции;

16: else if

17: end for

18: for «новая популяция» do

19: for each «каждый ген в хромосоме» do

20: if равномерная случайная вероятность (0.1) < Рт then

21: генная мутация;

22: end if

23: end for

24: end for

25: исправление конфликтов местоположения;

26: определение функции стоимости;

27: if лучший элемент в новой популяции >

лучший элемент в старой популяции then 28: сохранение лучшего элемента в новой популяции;

29: else

30: замена худшего элемента в новой популяции лучшим элементом

из старой популяции; 31: end if

32: end while

33: Сохранение лучшей конфигурации;

Исследование проведено на компьютере с процессом Intel i7-4810MQ и памятью RAM 32 ГБ. Каждый алгоритм выполняется 30 раз для каждой схемы.

V. РЕЗУЛЬТАТ ИССЛЕДОВАНИЯ

Проводится исследование задержки критического пути и времени выполнения схемы при использовании алгоритмов VTR, VTR-R и ГА-R с входными данными, указанными выше.

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

Таблица 3. Задержка критического пути и времени выполнения схемы и использованием разных алгоритмов размещения

Схе ма Задержка критического пути (ns) Время выполнения (s)

VTR±SD VTR-R±SD Aci % GA-R±SD ДС2 % VTR±SD VTR-R±SD At1% GA-R±SD A £2%

styr 3,08±0,16 2,17±0,02 11,71 2,72±0,0 2 11,62 0,37±0,05 1853±377 4,98E5 1365±11 0 3,67E5

plane t 2,85±0,08 2,59±0,02 -9,26 2,60±0,0 2 -8,83 0,65±0,05 5031±112 7 7,78E5 3592±32 8 5,55E5

s123 8 4,44±009 4,11±0,02 -7,46 4,11±0,0 3 -7,45 1,71±0,62 5906±151 0 3,43E5 3969±31 0 2,31E5

vda 3Д4±0,06 2,96±0,03 -8,65 2,97±0,0 3 -8,56 1,85±0,78 8977±172 0 4,84E5 6318±96 8 3,41E5

daio-rec 3,97±0,08 3,47±0,02 12,62 3,49±0,0 3 12,23 0,95±0,04 11960±75 0 1,26E6 3161±13 4 3,34E5

mm3 0a 13,16±0,13 12,47±0,03 -5,25 12,50±0, 04 -5,02 0,98±0,05 11802±13 90 1,20E6 3395±12 1 3,46E5

ecc 3,01±0,07 2,75±0,03 -8,79 2,75±0,0 3 -8,81 0,78±0,03 8617±205 1 1,10E6 5902±89 7 7,55E5

ex4p 2,74±0,04 2,60±0,02 -5,03 2,64±0,0 3 -3,67 3,35±085 25236±71 81 7,54E5 6536±17 13 1,95E5

C267 0 3,74±0,08 3,41±0,03 -8,79 3,53±0,0 7 -5,70 12,12±8,74 90184±206 92 7,44E5 9199±21 73 7,58E4

rot 3,78±0,03 3,57±0,04 -5,86 3,59±0,0 6 -4,77 15,42±10,0 6 137549±23 390 8,92E5 11470±32 30 7,43E4

x3 2,56±0,00 2,23±0,03 13,01 2,20±0,0 2 14,01 11,52±3,13 170177±10 699 1,48E6 12311±21 71 3,14E5

i7 1,93±0,00 1,67±0,01 13,39 1,66±0,0 1 13,79 19,81±4,38 241126±15 327 1,22E6 11180±29 42 5,63E4

frg2 3,31±0,01 3,00±0,03 -9,28 3,14±0,0 5 -4,94 14,6&t2,17 258359±18 465 1,76E6 12229±43 28 8,32E4

Из таблицы 3 видно, что при использовании новой функции стоимости с алгоритмами VTR-R и ГА-R, задержка критического пути значительно улучшается по сравнению с задержкой критического пути, полученной с алгоритмом VTR и с традиционной функцией стоимости. Однако, время выполнения для алгоритмов VTR-R и ГА-R увеличивается 106 раз больше, чем для алгоритмов VTR.

Из таблицы 3 также видно, что задержки критического пути для алгоритмов VTR-R и ГА-R не значительно отличаются друг от друга. Однако, время выполнения алгоритма ГА-R значительно больше, чем время выполнения алгоритма VTR-R.

Описание сходимости алгоритмов размещения со схемами planet и s1238 и статистика количества вычислений функции стоимости и стандартного отклонения после 30 итераций трех алгоритмов представлены на рисунке 3 и в таблице 4.

Количество итераций

а. Алгоритм VTR со схемой planet

зличество итерации

б. Алгоритм VTR-R со схемой planet

50 100 150

Количество итераций

в. Алгоритм GA-R со схемой planet

30 40 So lau läp

Э. Алгоритм VTR со схемой s1238

~г 40

So lau läp

е. Алгоритм VTR-R со схемой s1238

я

4/ ■Я

ОС

■о-

о

CP tot nhnt CP tmng binh i

Л f *»■ • > : V 1 u. ' <1/ i f

50

150

100 So láu lap

г. Алгоритм GA-R со схемой s1238

200

Рис. 3. Вариация функции стоимости и задержки критического пути, полученные алгоритмами размещения на схемах

planet и s1238

На рисунках 3а и 3д представлены вариации традиционной функции стоимости при использовании алгоритма АИО (VTR), изменение задержки критического пути при выполнении алгоритма VTR с предложенной функцией стоимости (VTR-R). На рисунках 3в и 3г представлены средняя задержка и наилучшая задержка критического пути при использовании алгоритма размещения ГА-R.

Таблица 4. Время оценки функции стоимости и стандартное отклонение после 30 итераций алгоритмов

Количество оценок

Схема VTR±SD VTR-R±SD GA-R±SD

styr 7969±434 12510±2408 8400±0

planet 11754±447 19207±2737 14000±0

s1238 12603±402 21470±4077 14000±0

vda 25250±903 23680±898 14000±0

daio-rec 28279±1154 52662±815 14000±0

mm30a 30024±902 47319±3939 14000±0

ecc 14002±582 24466±510 14000±0

ex4p 58678±1513 75667±14270 14000±0

C2670 127713±2805 172182±35844 14000±0

rot 153654±2791 188909±38129 14000±0

x3 146850±2571 247564±4556 14000±0

i7 170669±4067 276803±25262 14000±0

frg2 192546±2660 318533±20008 14000±0

Из таблицы 4 видно, что алгоритму VTR-R требуется больше времени для оценки, так как алгоритм УШ остановится, когда он не сможет найти лучше размещение схемы. Между тем, функция стоимости алгоритма VTR-R всегда улучшается после каждого поколения.

Кроме того, количество оценок функции стоимости алгоритма ГА^ не изменяется с уравнением (3) и меньше, чем у алгоритмов VTR и VTR-R.

VI. ВЫВОДЫ

В статье исследована функция стоимости алгоритмов размещения схем. Результаты исследования показывают, что, когда традиционная функция стоимости, используемая в алгоритме АИО, минимизирована, не обеспечивает минимальную задержку критического пути.

Для исправления этих недостатков, в статье предлагается использовать алгоритм соединения в качестве функции стоимости. Результаты показывают, что качество размещения значительно улучшается за счет изменения функции стоимости (VTR-R).

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

В данной статье доказана эффективность алгоритма ГА. Однако, в нем по-прежнему возникают связанные проблемы, которые требуют дальнейшего изучения и решения:

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

- Улучшение времени выполнения алгоритма ГА при использовании метода параллельных вычислений;

- Вместо использования условия остановки, основанного на фиксированном количестве поколений (итераций), как в статье, дальнейшие исследования могут основываться на сходимости алгоритма ГА-R для завершения итерационного процесса;

- Использование алгоритма подключения вместо алгоритма соединения;

- Исследование влияния параметров алгоритма соединения, таких как работы соединения, количество линий и т. д. на качество алгоритма соединения.

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

1. Brown S.D., Francis R.J., Rose J. and Vranesic Z.G. Field- Programmable Gate Arrays. Springer Science & Business Media, 1992. Vol. 180.

2. Chen D., Cong J. FPGA design automation: A survey. Foundations and Trends R in Electronic Design Automation. Vol. 1. № 3. Pp. 195-330, 2006.

3. Sherwani N.A. Algorithms for VLSI physical design automation. Springer Science & Business Media, 2012.

4. Ebeling C., McMurchie L., Hauck S.A. and Burns S. Placement and routing tools for the Triptych FPGA. IEEE Transactions on Very Large Scale Integration (VLSI) Systems. Vol. 3. № 4. Pp. 473-482, 1995.

5. Betz V. and Rose J. VPR: A new packing, placement and routing tool for FPGA research. in Field-Programmable Logic and Applications. Springer, 1997. Pp. 213-222.

6. Marquardt A., Betz V. and Rose J. Timing-driven placement for FPGAs. In Proceedings of the 2000 ACM/SIGDA eighth international symposium on Field programmable gate arrays. ACM, 2000, Pp. 203- 213.

7. Vorwerk K., Kennings A. and Greene J. W. Improving simulated annealing-based FPGA placement with directed moves. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems. Vol. 28. № 2. Pp. 179-192, 2009.

8. Z. Baruch, O. Cret„ and H. Giurgiu, "Genetic algorithm for FPGA placement," in Proceedings of the 12th International Conference on Control Systems and Computer Science (CSCS12). Vol. 2, 1999. Pp. 121-126.

9. Venkatraman R. and PatnaikL. M. An evolutionary approach to timing driven FPGA placement. In Proceedings of the 10th Great Lakes symposium on VLSI. ACM, 2000. Pp. 81-85.

10. Del Solar M.R., Pulido J.A.G., Perez J.M.S. and Rodriguez M.A V. Genetic algorithms for solving the placement and routing problem of an FPGA with area constraints. Proc. IEEE ISDA. Pp. 31-35, 2004.

11. Borra S.N.R., Muthukaruppan A., Suresh S. and Kamakoti V. A novel approach to the placement and routing problems for field programmable gate arrays. Applied Soft Computing.Vol. 7. № 1. Pp. 455-470, 2007.

12. Jamieson P. Revisiting genetic algorithms for the FPGA placement problem. In GEM. Citeseer, 2010. Pp. 16-22.

13.Xu Y. and Khalid M.A. QPF: efficient quadratic placement for FPGAs. In Field Programmable Logic and Applications, 2005. International Conference on. IEEE, 2005. Pp. 555-558.

14. Gopalakrishnan P., Pileggi L. Architecture-aware FPGA placement using metric embedding. In Design Automation Conference, 2006 43rd ACM/IEEE. IEEE, 2006. Pp. 460-465.

15. Areibi S. Starplace: A new analytic method for FPGA placement. INTEGRATION, the VLSI journal. Vol. 44. № 3. Pp. 192-204, 2011.

16. Lin T.-H., Banerjee P. and Chang Y.-W. An efficient and effective analytical placer for FPGAs. In Proceedings of the 50th Annual Design Automation Conference. ACM, 2013. P. 10.

17. Ludwin A. and Betz V. Efficient and deterministic parallel placement for FPGAs. ACM Transactions on Design Automation of Electronic Systems (TODAES). Vol. 16. № 3. P. 22, 2011.

18. Riess B.M., Doll K. and Johannes F.M. Partitioning very large circuits using analytical placement techniques. In Design Automation, 1994. 31st Conference on. IEEE, 1994. Pp. 646-651.

19. Gort M. and Anderson J. H. Analytical placement for heterogeneous FPGAs. Iin Field Programmable Logic and Applications (FPL), 2012 22nd International Conference on. IEEE, 2012. Pp. 143-150.

20. Luu J., Goeders J., Wainberg M., Somerville A. VTR 7.0: Next generation architecture and CAD system for FPGAs. ACM Transactions on Reconfigurable Technology and Systems (TRETS). Vol. 7. № 2. P. 6, 2014.

21. LGSynth93 M. Benchmarks. [Электронный ресурс]. Режим доступа: www. eecg. toronto. eduT lemieux/sega/ccts blif. tar.

22. Betz V., Rose J. and Marquardt A. Architecture and CAD for deepsubmicron FPGAs. Springer Science & Business Media, 2012. Vol. 497.

23. Cant'u-PazE. A survey of parallel genetic algorithms. In Calculateurs paralleles. Citeseer, 1998.

24.Alba E. and Tomassini M. Parallelism and evolutionary algorithms. IEEE Transactions on Evolutionary Computation. Vol. 6. № 5. Pp. 443- 462, 2002.

25. Jamieson P. Exploring inevitable convergence for a genetic algorithm persistent FPGA placer. 2011.

26. Lewis D., Ahmed E., Cashman D. Architectural enhancements in Stratix-III and Stratix-IV. in Proceedings of the ACM/SIGDA international symposium on Field programmable gate arrays. ACM, 2009. Pp. 33-42.

27. MasudM.I. and Wilton S.J. A new switch block for segmented FPGAs. In Field programmable logic and applications. Springer, 1999. Pp. 274-281.

28. Berkeley logic interchange format (BLIF). Oct Tools Distribution 2, 1992.

29. VTR tool, University of Toronto. [Электронный ресурс]. Режим доступа: http://https://github.com/verilog-to-routing/vtr-verilog-to-routing/ (дата обращения: 04.09.2018).

30. Pedersen M.E.H. and ChipperfieldA.J. Local unimodal sampling. HL0801 Hvass Laboratories, 2008.

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