Перкин Павел Валериевич
Українська English

Перкин Павел Валериевич

Факультет компьютерных наук и технологий (ФКНТ)

Кафедра компьютерной инженерии (КИ)

Специальность: Компьютерные системы и сети (КС)

Тема работы: Исследование структур композиционных устройств управления с использованием распределенных вычислений

Научный руководитель: доц. кафедры КИ Зеленёва Ирина Яковлевна


Исследование структур композиционных устройств управления с использованием распределенных вычислений

Введение

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

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

Актуальность проблемы

Современные микросхемы ПЛИС обладают свойством реконфигурируемости, что позволяет конечному пользователю самостоятельно выполнять проектирование цифровых устройств с использованием специализированных САПР. При этом длительность процесса проектирования непосредственно зависит от вычислительной мощности используемого ПК и от сложности проектируемого устройства. Для увеличения производительности процесс проектирования можно выполнять с использованием распределенных вычислений. При этом выполнить запуск САПР на нескольких процессорах затруднительно, а вот выполнение нескольких независимых процессов одновременно может значительно сократить общее время проектирования, что значительно сократит время проектирования, при обработке более чем одного цифрового устройства [1].

Цели и задачи

Основной целью магистерской работы является уменьшение времени, затрачиваемого на процесс имплементации цифрового устройства, путем реализации этого этапа проектирования с помощью распределенных вычислений. Основной идеей данной методики является одновременное параллельное выполнение некоторого количества процессов имплементации на многопроцессорном вычислительном ресурсе. В качестве такого ресурса предполагается использовать кластер ДонНТУ NeClus – параллельную вычислительную систему MIMD-архитектуры с распределенной памятью [4] Для достижения цели необходимо в рамках магистерской работы решить ряд задач: изучить особенности организации кластера; разработать протокол взаимодействия управляющего узла с операционными узлами; разработать и исследовать методику балансирования загрузки операционных узлов; исследовать эффективность использования многопроцессорного вычислительного ресурса при массовом выполнении слабосвязанных задач.

Особенности параллельных вычислений

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

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

Виды параллельных систем

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

Современные параллельные системы

Основным параметром классификации параллельных компьютеров является наличие общей (SMP) или распределенной памяти (MPP). Нечто среднее между SMP и MPP представляют собой NUMA-архитектуры, где память физически распределена, но логически общедоступна. Кластерные системы являются более дешевым вариантом MPP. При поддержке команд обработки векторных данных говорят о векторно-конвейерных процессорах, которые, в свою очередь могут объединяться в PVP-системы с использованием общей или распределенной памяти. Все большую популярность приобретают идеи комбинирования различных архитектур в одной системе и построения неоднородных систем.

При организациях распределенных вычислений в глобальных сетях (Интернет) говорят о мета-компьютерах, которые, строго говоря, не представляют из себя параллельных архитектур.

Наиболее типичные классы архитектур современных параллельных компьютеров и супер-ЭВМ:


Рисунок 1 - Кластер ДонНТУ

Особенности синтеза цифровых устройств

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

Базис ПЛИС

ПЛИС (программируемая логическая интегральная схема) - это большие интегральные микросхемы матричного типа, позволяющие программным способом реализовать логические функции большой сложности. Физическим ограничением быстродействия присущей всем традиционным архитектурам процессоров является последовательное выполнение команд [8]. В отличие от обычных цифровых микросхем, логика работы ПЛИС не определяется при изготовлении, а задаётся посредством программирования (проектирования). Для программирования используются программаторы и отладочные среды, позволяющие задать желаемую структуру цифрового устройства в виде принципиальной электрической схемы или программы на специальных языках описания аппаратуры: Verilog, VHDL, AHDL и др. Альтернативой ПЛИС являются: программируемые логические контроллеры (ПЛК), базовые матричные кристаллы (БМК), требующие заводского производственного процесса для программирования; ASIC — специализированные заказные большие интегральные схемы(БИС), которые при мелкосерийном и единичном производстве существенно дороже; специализированные компьютеры, процессоры (например, цифровой сигнальный процессор) или микроконтроллеры, которые из-за программного способа реализации алгоритмов в работе медленнее ПЛИС.

Некоторые производители ПЛИС предлагают программные процессоры для своих ПЛИС, которые могут быть модифицированы под конкретную задачу, а затем встроены в ПЛИС. Тем самым обеспечивается уменьшение места на печатной плате и упрощение проектирования самой ПЛИС, за счёт быстродействия [9]

Типы ПЛИС

В настоящее время наибольшую распространенность получили два типа архитектур ПЛИС:

1) CPLD (англ. complex programmable logic device). Примерами ПЛИС данной архитектуры является семейство MAX фирмы Altera и CoolRunner фирмы Xilinx. Для архитектур данных ПЛИС характерны крупные логические блоки - макроячейки (macrocells). Современные ПЛИС содержат до нескольких сотен макроячеек. Каждая макроячейка реализует функцию нескольких переменных и содержит триггер для хранения полученного результата. Для ПЛИС данной архитектуры характерно крайне низкая потребляемая мощность в статическом режиме (потребляемый ток порядка десятков микроампер), которая линейно возрастает с увеличением тактовой частоты. Также для данной архитектуры характерны жесткие временные задержки между макроячейками а следовательно и выводами микросхемы. Типичное время задержки между выводами (pin-to-pin) составляет единицы наносекунд. Прошивка ПЛИС данной архитектуры хранится внутри микросхемы в энергонезависимой памяти.

2)FPGA (англ. field-programmable gate array). ПЛИС данной архитектуры обладают намного более развитой архитектурой, по сравнению с CPLD. Основной структурной единицей ПЛИС данной архитектуры является LUT(англ. Lookup tables) - таблицы преобразования, позволяющие реализовывать логические функции. Современные ПЛИС содержат аппаратные умножители в том числе с накоплением (MAC), блоки внутренней памяти, аппаратные интерфейсы для DDRx SDRAM, аппаратные ядра PCIexpress, встроенные микропроцессорные ядра, трансиверы для организации скоростной передачи данных между ПЛИС и внешними устройствами [8]. На рисунке 2 приведена плата Xilinx Spartan 3E – типичный представитель архитектуры FPGA.


Рисунок 2 - Плата Xilinx Spartan

Результаты

На кафедре компьютерной инженерии Донецкого национального технического университета было разработано программное обеспечение (ПО), используемое для синтеза моделей управляющих автоматов. Исходными данными для синтеза является описание граф-схемы алгоритма управления в формате языка XML [1]. При помощи ПО можно получить множество моделей управляющих устройств, интерпретирующих исходную ГСА. Модель представляет собой vhd-файлы, описывающие функциональные узлы управляющих устройств, а также mif–файлы, содержащие микропрограмму (для управляющих устройств с памятью).

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

В качестве САПР, для имплементации моделей будет использоваться Xilinx ISE. Процесс имплементации будет полностью автоматизирован, благодаря использованию tcl-скрипта, указывающего название проекта, перечень включаемых файлов, тип и семейство базовой микросхемы ПЛИС, а также дополнительные параметры. На рисунке 3 приведена работа алгоритма параллельной обработки.

 Анимация размером 16кб, семь повторений, 9 кадров

Рисунок 3 – Работа алгоритма параллельной имплементации.

Важное замечание

При написании реферата магистерская работа еще не завершена, планируемое время завершения — декабрь 2012 года. Полный текст работы и материалы по теме могут быть получены у автора или его руководителя после указанной даты.

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