Источник: http://www.ict.edu.ru/vconf/files/11499.pdf

О применении реконфигурируемых унифицированных вычислителей для решения научно-технических задач

С.Я. Гильгурт

Программируемые логические интегральные схемы (ПЛИС) в настоящее время все чаще используются для решения ресурсоемких вычислительных задач. Помимо ре­конфигурируемых суперкомпьютеров развивается альтернативное направление -применение недорогих типовых устройств, реконфигурируемых унифицированных вычислителей (РУВ), подключаемых к существующим универсальным компьютерам. Ключевым фактором их массового распространения является стандартизация и уни­фикация обмена данными между загруженной в РУВ вычислительной структурой и остальными компонентами вычислительной системы. В работе проанализированы способы реализации такого обмена по современным интерфейсам. Исследованы воз­можности применения РУВдля решенияконкретных научно-технических задач.

1. Введение

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

В 80-е годы, когда начиналась эпоха персональных ЭВМ, история в значительной степени повторилась. Но на этот раз кое-кто сумел оценить предыдущий опыт и правильно предугадать направление.

Сегодня, на исходе 00-х годов нового тысячелетия, ситуация с параллельными вычисле­ниями и суперкомпьютингом в значительной степени повторяет две предыдущие истории. Соз­дается множество разнородных, несовместимых, уникальных систем, ведутся споры о том, ка­кая архитектура для каких классов задач предпочтительнее. Вкладываются огромные средства, составляются долгосрочные программы. При этом о возможности единообразного унифициро­ванного решения на все случаи жизни даже не заходит речь. А ведь уже через 10-12 лет каждо­му инженеру будет доступна вычислительная мощь сегодняшних суперкомпьютерных систем – участниковсписка "Top500".

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

Исследование закономерностей в развитии электроники и компьютеростроения позволяет предсказать наиболее вероятные подходы к построению завтрашних высокопроизводительных систем.

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

2. Потенциал программируемой логики

Появление и массовое распространение ПЭВМ обязано революционному прорыву в об­ласти микроэлектроники – созданию микропроцессора. Сегодня с трудом верится, что изна­чально микропроцессоры задумывались и создавались исключительно для применений в облас­ти электроники. Лишь со временем, достигнув определенного уровня вычислительной мощно­сти, они выступили в качествеосновы для персональных компьютеров.

Сегодня соизмеримым по значимости прорывом в микроэлектронике являются программи­руемые логические интегральные схемы (ПЛИС). Первоначально программируемая логика по­зиционировалась в качестве замены сложных БИС, ориентированных, как когда-то микропро­цессоры, только на "электронные" применения. Однако на сегодняшний день ПЛИС достигли такого уровня развития, что могут быть с успехом задействованы (и уже используются) в каче­стве элементной базы для эффективного решения вычислительных задач, в том числе -высоко­производительных.

В чем же заключается революционность и беспрецедентный потенциал программируемой логики?

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

Современные микросхемы программируемой логики содержат миллионы эквивалентных логических элементов и позволяют синтезировать внутри себя довольно мощные цифровое устройства, в том числе – высокопроизводительные параллельные структуры. Загрузка требуе­мой конфигурации в ПЛИС (фактически – изготовление схемы) занимает по времени доли се­кунды. Количество циклов реконфигурирования неограниченно. Эти особенности дают про­граммируемой логике возможность в значительной степени разрешить противоречие между универсальными и специализированными процессорами, совмещая в себе гибкость первых и быстродействие вторых.

3. Необходимость стандартизации

Одним из важнейших факторов снижения стоимости и широкого распространения ПЭВМ является разделение труда.

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

Следует обратить внимание, что принципиальную возможность разделения труда, о кото­ром здесь говорится, дает унификация и стандартизация технических решений, интерфейсов и протоколов.

Суперкомпьютингу, как более сложному и высокоорганизованному явлению, разделение труда необходимо в значительно большей степени. Использование программируемой логики в дополнение к вышеперечисленным позволяет выделить принципиально новую область прило­жения усилий: разработка и отладка конфигураций, загружаемых в ПЛИС. Соответственно еще больше возрастает потребность в согласовании действий специалистов разных областей, в стандартизации.

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

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

4. Взаимодействие ссуществующей техникой

В работе [1] на основе анализа ряда факторов был сделан вывод о том, что развитие рекон­фигурируемой техники широкого применения пойдет по пути тесного сотрудничества, взаимо­действия с существующими вычислительными средствами, как однопроцессорными, так и па­раллельными, для которых накоплен богатый опыт разработки и эксплуатации. В процессе ис­следования были также выявлены и изучены различные формы взаимодействия гибкой и «же­сткой» логики, предпринята попытка классифицировать широкий спектр возможных техниче­ских решений, оценить их эффективность.

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

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

Высокая масштабируемость рассматриваемого решения позволяет начать работы в данном направлении без существенных начальных вложений. Для проведения первых экспериментов достаточно иметь стандартную ПЭВМ и одно или несколько устройств, отвечающих основным требованиям, предъявляемым к РУВ. В качестве таких устройств на начальном этапе могут быть задействованы некоторые из так называемых плат прототипа, предназначенных для раз­работки приложений на программируемой логике. В источнике [2] собрана и поддерживается в актуальном состоянии подробная информация оботладочных средствах дляПЛИС.

5. Реконфигурируемый унифицированный вычислитель

Требования к структуре и составу РУВ, сформулированы, например, в работе [3]. Рассмот­рим и кратко прокомментируем перечень обязательных компонентов, которые должен содер­жать реконфигурируемых вычислитель.

5.1 Микросхема ПЛИС

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

5.2 Контроллер обменаданными

Контроллер, аппаратно реализующий алгоритм какой-либо скоростного интерфейса пере­дачи данных необходим для обмена информацией с центральным процессором, прочими ком­понентами вычислительной системы, а также с другими РУВ. Другой важной функцией этого контроллера является обеспечение загрузки в ПЛИС требуемой конфигурации. Именно по этой причине реализация контроллера как части реконфигурируемой структуры недопустимо, по­скольку технологически большинство микросхем программируемой логики, пригодных для использования в реконфигурируемых вычислителях (типа FPGA) устроено по принципу стати­ческого ОЗУ, содержимое памяти конфигурации которых энергозависимо (теряется при пропа­дании питающего напряжения).

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

Виды интерфейсов, которые могут быть использованы для обмена данными, рассмотрены в следующем разделенастоящей работы.

5.3. Локальное ОЗУ

Быстродействующее локальное двухпортовое ОЗУ небольшого объема необходимо для сверхоперативного хранения промежуточных результатов обработки информации, производи­мой в реконфигурируемом вычислителе. Строится оно, как правило, на базе памяти статиче­ского типа.

Применение в РУВ запоминающих устройств большой емкости в виде устанавливаемых в стандартные разъемы типовых модулей памяти, например типа DDR-II, нецелесообразно, по­скольку резко повышает стоимостьвычислителя и снижает его универсальность. Следуеттакже заметить, что модули памяти – самые быстроизменяемые компоненты современных универ­сальных компьютеров. Их использование в составе РУВ приведет к быстрому моральному ста­рению последних.

5.4. Прочие компоненты

В качестве примера вспомогательных элементов, облегчающих эксплуатацию РУВ, могут служить отладочные микропереключатели и светодиоды. Наличие этих минимальных диагно­стических средств упростит в случае необходимости тестирование и анализ технического со­стояния изделия.

6. Интерфейсы обмена данными

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

В таблице 1 сведены наиболее производительные каналы обмена данными из вышепере­численных категорий.

Таблица 1. Интерфейсыобмена данными сРУВ.

Рассмотрим их подробнее.

Интерфейсная периферийная шина USB является самым медленным из рассматриваемых решений. К достоинствам данного варианта можно отнести возможность задействования боль­шого числа РУВ, удобство подключения к ПЭВМ (в том числе – в режиме "на лету"), а также возможность построения суперкомпьютерной системы набазе мобильных компьютеров.

Подключение РУВ аналогично накопителям данных, в частности, через интерфейс Serial ATA также не очень эффективно по быстродействию.

Использование для обмена с РУВ системных шин в большинстве случаев является опти­мальным по соотношению производительность/стоимость решения. Число используемых вы­числителей может быть достаточным для построения относительно больших реконфигурируе­мых систем. Этот вариант также является одним из самых надежных в плане защиты от мо­рального старения, поскольку стандарты системных шин в современных универсальных ЭВМ являются одними из самых консервативных.

Вариант применения РУВ, конструктивно выполненных в виде модуля памяти на первый взгляд представляется привлекательным из-за высокого быстродействия. Однако ему присущи и существенные недостатки. Прежде всего, это небольшое количество свободных слотов, кото­рые необходимо делить с модулями памяти. Кроме того, на размеры РУВ в этом варианте на­кладываются существенные ограничения.

Решение, основанное на технологии HyperTransport, является самым новым среди упомя­нутых. По этой причине трудно провести объективную оценку данного варианта. Из известных на сегодняшний день преимуществ можно назвать высокое быстродействие, а также возмож­ность реализации РУВ в конструктиве, аналогичном центральному процессору, то есть в виде модуля, вставляемого в процессорный сокет на материнской плате, изготовленной, например, в двухпроцессорном варианте. Примечательно, что в этом случае охлаждение вычислителя мо­жет осуществляться стандартным кулером, ориентированным на применение с ЦП. Очевидны­ми недостатками решения являются высокая стоимость и ограничение по числу одновременно подключенных РУВ. Негативным также следует признать тот факт, что данная технология в настоящее время не поддерживается основным производителем микропроцессоров и наборов системной логики для персональных ЭВМ – фирмой Intel. Впрочем, данная компания ведет своисобственныеразработки в данном направлении.

7. Решение конкретных задач

В работах [4-10] на конкретных примерах исследованы возможности применения РУВ для решения задач распознавания, нейросетевых вычислений, в области защиты информации (в частности, в качестве криптопроцессоров, для аутентификации пользователей компьютерных систем по клавиатурному почерку, в целях аппаратной защиты информационных систем от вредоносного ПО), проблем хранения и обработки больших объемов данных и других актуаль­ных научно-технических задач.

8. Заключение

По результатам настоящего исследования можно сделатьследующие выводы.

Применение реконфигурируемых унифицированных вычислителей представляется целесо­образным для создания недорогих суперкомпьютерных систем широкого применения.

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

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

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

Оптимальным по соотношению производительность/стоимость (а также в плане защиты от морального старения) решением для обмена данными с РУВ является использование систем­ных шин PCI / PCI-X / PCI Express.

Литература

1. Гильгурт С.Я. Применение типовых устройств на базе программируемой логики для решения вычислительных задач // Тез. докл. II международной конф. «Параллельные вычисления и задачи управления», 4–6 окт. 2004 г. – М.: Институт проблем управления им.В.А.Трапезникова РАН, 2004. – С. 514–530.

2. FPGA Boards and Systems – http://www.fpga-faq.com/FPGA_Boards.shtml

3. Гильгурт С.Я., Гиранова А.К. Программное обеспечение для тестирования аппаратных средств реконфигурируемых вычислителей // Моделювання та інформаційні технології. Зб. наук. пр. ІПМЕ НАН України. – Вип. 38. – Київ: 2006. – С. 8–14.

4. Гильгурт С.Я. К вопросу о применении реконфигурируемых вычислителей в современ­ных технологиях хранения данных // Тез. доп. XXV наук.-техн. конф. «Моделювання» – Київ: Інститут проблем моделювання в енергетиці ім.Г.Є.Пухова НАН України, 2006. – С. 171–175.

5. Гильгурт С.Я., ДавиденкоА.Н. Решение задач распознавания с применением реконфи­гурируемых вычислителей. Искусственный интеллект. Интеллектуальные и многопро­цессорные системы – 2006 // Тез. докл. Международной научно-технической конферен­ции. Т. 2. – Таганрог: Изд-во ТРТУ, 2006. – С. 76–79.

6. Гильгурт С.Я., Давиденко А.Н, Кочурков А.А. Анализ требований к шифраторам на ба­зе ПЛИС, предъявляемых современными информационными технологиями // Зб. наук. пр. ІПМЕ НАН України. – Вип. 30. – Київ: 2005. – С. 17–26.

7. Давиденко А.М., Гільгурт С.Я., ВисоцькаО.О., КочурковА.А., Чернова Ю.О. Експери­ментальне дослідження програми для автентифікації користувачів комп'ютерної систе­ми за клавіатурним почерком за допомогою імовірнісної нейронної мережі // Вісник Національного технічного університету «ХПІ». – Х.: НТУ «ХПІ». – 2005. - №56. С. 66– 69.

8. Гильгурт С.Я. Аппаратные средства реализации нейронных сетей на базе реконфигури­руемых вычислителей // Тез. докл. III международной конф. «Параллельные вычисле­ния и задачи управления», 2–4 окт. 2006 г. – М.: Институт проблем управления им.В.А.Трапезникова РАН, 2006. – С. 441–450.

9. Гильгурт С.Я. К вопросу о применении реконфигурируемых вычислителей в современ­ных технологиях хранения данных // Тез. доп. XXV наук.-техн. конф. «Моделювання» – Київ: Інститут проблем моделювання в енергетиці ім.Г.Є.Пухова НАН України, 2006. – С. 171–175.

10. Гильгурт С.Я. Особенности применения реконфигурируемых вычислителей для аппа­ратной защиты информационных систем // Зб. наук. пр. ІПМЕ НАН України. – Вип. 38.

– Київ: 2007. – С. 36–41.