РЕКОНФИГУРИРУЕМАЯ ВЫЧИСЛИТЕЛЬНАЯ СИСТЕМА
RECONFIGURABLE COMPUTING SYSTEM

Изобретение относится к области вычислительной техники, в частности к реконфигурируемым высокопроизводительным вычислительным системам кластерного типа, предназначенным для решения трудоемких задач, обработки больших информационных массивов и потоков, с использованием распараллеливания и конвейеризации вычислительных процессов.
Реконфигурируемая вычислительная система кластерного типа представляет собой множество ведомых вычислительных узлов, работающих под управлением ведущего сервера, объединенных коммуникационной средой. Коммуникационная среда обеспечивает взаимодействие как между ведущим сервером и ведомыми вычислительными узлами, так и непосредственно между ведомыми вычислительными узлами.
Вычислительные узлы реконфигурируемых вычислительных систем кластерного типа включают универсальное вычислительное средство (компьютер), реконфигурируемые вычислительные устройства, интерфейсы взаимодействия и средства их коммутации.
Реконфигурируемые вычислительные устройства - это подключаемые к универсальному вычислительному средству с помощью внешнего интерфейса ввода-вывода PCI-Express и работающие под его управлением высокопроизводительные вычислители, которые содержат ПЛИС и специализированные вычислительные процессоры, выполненные на заказных СБИС.
Реконфигурация - это процесс изменения взаимодействий в вычислительной системе программным способом, с целью организации различных схем последовательной (конвейерной), параллельной и/или последовательно-параллельной обработки данных внутри заданной группы вычислительных средств, для реализации требуемых алгоритмов обработки.
ПЛИС - это программируемые логические интегральные схемы, имеющие в своем составе большое количество логических и запоминающих элементов, которые могут динамически программироваться как устройства, предназначенные как для организации требуемых вычислений, так и для поддержки требуемых интерфейсов взаимодействия.
Заказные СБИС - это специализированные интегральные схемы, предназначенные для схемотехнической реализации конкретных трудоемких алгоритмов вычислительно сложных вариантных задач дискретной математики.
Известен реконфигурируемый вычислительный модуль (RU №168565 U1, МПК G06F 15/177, заявлено 21.11.2016, опубликовано 08.02.2017), который может быть использован в реконфигурируемых вычислительных блоках многопроцессорных вычислительных систем, содержащий внешний порт для обмена информацией, коммутатор PCI-Express, интерфейсную и N вычислительных ПЛИС, каждая из которых содержит высокоскоростной последовательный интерфейс PCI-Express, причем порты коммутатора PCI-Express соединены с внешними портами модуля и с интерфейсами PCI-Express интерфейсной ПЛИС и N вычислительных ПЛИС, группу из N вычислительных СБИС, причем каждая СБИС из N вычислительных СБИС соединена индивидуальными двунаправленными информационными шинами с соответствующими вычислительными ПЛИС, блок оперативного реконфигурирования памятей стартовых конфигураций вычислительных ПЛИС, соединенный с интерфейсной ПЛИС, каждая ПЛИС из группы N вычислительных ПЛИС соединена с соответствующими памятями стартовых конфигураций вычислительных ПЛИС, которые шиной оперативного реконфигурирования также соединены между собой и с блоком оперативного реконфигурирования памятей стартовых конфигураций вычислительных ПЛИС, блок контроля и управления питанием и блок мониторинга, соединенные двунаправленными шинами с интерфейсной ПЛИС, порт контроля и управления JTAG и память конфигурации интерфейсной ПЛИС, соединенные с блоком оперативного конфигурирования интерфейсной ПЛИС, причем интерфейсная ПЛИС соединена двунаправленной общей шиной с N вычислительными ПЛИС, каждая ПЛИС из группы N вычислительных ПЛИС и каждая СБИС из группы N вычислительных СБИС соединены двунаправленной шиной мониторинга с блоком мониторинга, блок синхронизации, соединенным двунаправленной шиной с интерфейсной ПЛИС, причем каждая СБИС из группы N вычислительных СБИС соединена шиной синхронизации с блоком синхронизации.
Недостатками данного модуля являются невысокая средняя скорость обмена информацией вычислительных ПЛИС по внешнему порту и неравномерное энергопотребление модуля, в зависимости от характера решаемых им задач, при использовании данного модуля в многопользовательских (многозадачных) системах.
Причиной, препятствующей достижению указанного ниже технического результата, является распределение вычислительных ресурсов между пользователями реконфигурируемых вычислительных систем, построенных на базе данных модулей, при котором минимальной единицей ресурса для пользователя является вычислительный модуль в целом, состоящий из N вычислительных ПЛИС и N вычислительных СБИС, что связано с единой системой управления питанием, синхронизацией и оперативного реконфигурирования вычислительных ПЛИС, при которой все вычислительные ПЛИС и СБИС модуля могут работать в текущем временном интервале только над выполнением однотипных задач, которые могут требовать либо высокой интенсивности обмена, либо высокого энергопотребления.
1
К
1
К
1
N
1
М
1
М
1
M
1
М
Наиболее близкой вычислительной системой того же назначения, к заявленному изобретению, по совокупности признаков, принятой за прототип, является реконфигурируемая вычислительная система (RU №156778 U1, МПК G06F 15/16, заявлено 10.04.2015, опубликовано 20.11.2015 Бюл. №32), содержащая ведущий сервер 2, соединенный по сетевому интерфейсу 3 с коммутатором EtherNet 1 управления вычислительной системы, который соединен по сетевым интерфейсам EtherNet 7, …, 7 с группой из К ведомых вычислительных узлов 4, …, 4, каждый из которых содержит коммутатор PCI-Express 11, компьютер 8 и группу из N реконфигурируемых вычислительных устройств 13, …, 13, каждое из которых содержит коммутатор PCI-Express 19, группу из М вычислительных ПЛИС 20, …, 20, интерфейсную ПЛИС 22, блок конфигурирования и мониторинга 23, блок управления режимом коммутатора PCI-Express 30 и память 24 конфигураций ПЛИС, причем интерфейсная ПЛИС 22 соединена с блоком управления режимом коммутатора PCI-Express 30, памятью конфигураций ПЛИС 24 и блоком конфигурирования и мониторинга 23, который по общей шине конфигурирования и мониторинга вычислительных ПЛИС 25 соединен с группой из М вычислительных ПЛИС 20, …, 20, а также каждый коммутатор PCI-Express 19 соединен с блоком управления режимом 30 коммутатора PCI-Express, интерфейсной ПЛИС 22 по высокоскоростному последовательному интерфейсу PCI-Express 17 и с вычислительными ПЛИС 20, …, 20, по высокоскоростным последовательным интерфейсам PCI-Express 21, …, 21.
Недостатком данной вычислительной системы является невысокая вычислительная мощность при относительно высокой мощности энергопотребления при реализации трудоемких вычислительных алгоритмов.
Причиной, препятствующей достижению указанного ниже технического результата, является то, что при реализации трудоемких вычислительных алгоритмов на вычислительных ПЛИС имеет место большой процент накладных расходов, что уменьшает эффективность использования вычислительных ресурсов, а также невысокие рабочие частоты выполнения операций, что связанно со спецификой внутренней структуры ПЛИС, на основе которых реализована данная реконфигурируемая вычислительная система.
Задача, на решение которой направлено предлагаемое изобретение, заключается в создании высокопроизводительной реконфигурируемой вычислительной системы.
Техническим результатом предлагаемого изобретения является повышение вычислительной мощности и снижение удельной мощности энергопотребления вычислительной системы.
1
K
1
К
1
N
1
М
1
М
1
М
1
М
Для решения данной задачи в реконфигурируемую вычислительную систему содержащую ведущий сервер 2 соединенный по сетевому интерфейсу 3 с коммутатором EtherNet 1 управления вычислительной системы, который соединен и по сетевым интерфейсам EtherNet 7, …, 7 с группой из K ведомых вычислительных узлов 4, …, 4, каждый из которых содержит коммутатор PCI-Express 11, компьютер 8 и группу из N реконфигурируемых вычислительных устройств 13, …, 13, каждое из которых содержит коммутатор PCI-Express 19, группу из М вычислительных ПЛИС 20, …, 20, интерфейсную ПЛИС 22, блок конфигурирования и мониторинга 23, блок управления режимом коммутатора PCI-Express 30 и память 24 конфигураций ПЛИС, причем интерфейсная ПЛИС 22 соединена с блоком управления режимом коммутатора PCI-Express 30, памятью конфигураций ПЛИС 24 и блоком конфигурирования и мониторинга 23, который по общей шине конфигурирования и мониторинга вычислительных ПЛИС 25 соединен с группой из М вычислительных ПЛИС 20, …, 20, а также каждый коммутатор PCI-Express 19 соединен с блоком управления режимом 30 коммутатора PCI-Express по шине управления 12, интерфейсной ПЛИС 22 по высокоскоростному последовательному интерфейсу PCI-Express 17 и с вычислительными ПЛИС 20, …, 20, по высокоскоростным последовательным интерфейсам PCI-Express 21, …, 21,
1
N
1
К
1
N
1
N
1
M
1
M
1
M
1
M
1
М
дополнительно введены двухпортовая интерфейсная плата 5, коммутатор PCI-Express 31 объединения реконфигурируемых вычислительных устройств 13, …, 13 ведомых вычислительных узлов 4, …, 4, в каждый из которых введена группа из N памятей состояния 9, …, 9 реконфигурируемых вычислительных устройств 13, …, 13, в каждое из которых введены группа из М вычислительных СБИС 33, …, 33, единый радиатор прямоугольной формы 27, установленный над вычислительными СБИС 33, …, 33, группа из М блоков индивидуального мониторинга и управления 15, …, 15 и группа из М памятей стартовых конфигураций 35, …, 35 соответствующих вычислительных ПЛИС 20, …, 20,
1
К
1
К
1
N
1
N
1
N
1
N
1
М
1
M
1
M
1
M
1
M
1
M
1
M
1
M
1
M
1
M
причем в каждом ведомом вычислительном узле 4, …, 4 компьютер 8 подключен к соответствующему сетевому интерфейсу EtherNet 7, …, 7, соединен с N памятями состояния 9, …, 9 реконфигурируемых вычислительных устройств 13, …, 13 и соединен высокоскоростным последовательным интерфейсом PCI-Express 10 с коммутатором PCI-Express 11, который группой из N высокоскоростных последовательных интерфейсов PCI-Express 16, …, 16 соединен с портами NT/US соответствующих коммутаторов PCI-Express 19 группы из N реконфигурируемых вычислительных устройств 13, …, 13, в каждом из которых вычислительные ПЛИС 20, …, 20 подключены к соответствующим одноименным памятям 35, …, 35 конфигураций вычислительных ПЛИС по индивидуальным шинам 36, …, 36 реконфигурации вычислительных ПЛИС и по индивидуальным шинам 32, …, 32 оперативной реконфигурации памятей стартовых конфигураций, а также подключены к одноименным вычислительным СБИС 33, …, 33 по индивидуальным шинам обмена данными 34, …, 34 и по индивидуальным шинам управления мониторингом 26, …, 26 к индивидуальным блокам мониторинга 15, …, 15, которые подключены к соответствующим вычислительным СБИС 33, …, 33 по шинам мониторинга 14, …, 14,
1
N
1
N
1
K
1
К
кроме того порты NT/DS/US коммутаторов PCI-Express 19 реконфигурируемых вычислительных устройств 13, …, 13 подключены к соответствующему интерфейсу из группы из N высокоскоростных последовательных интерфейсов объединения PCI-Express 28, …, 28, которые объединены в K групп 29, …, 29 по N высокоскоростных последовательных интерфейсов объединения PCI-Express ведомых вычислительных устройств 4, …, 4 и подключены к соответствующим портам DS коммутатора PCI-Express 31, порт US которого подключен к порту DS двухпортовой интерфейсной платы 5 по высокоскоростному последовательному интерфейсу PCI-Express 18, а порт US двухпортовой интерфейсной платы 5 подключен по высокоскоростному последовательному интерфейсу PCI-Express 6 к ведущему серверу 2.
На фиг. 1 приведена функциональная схема предлагаемой реконфигурируемой вычислительной системы.
На фиг. 1 и в тексте приняты следующие сокращения:
ВУ - вычислительный узел;
РВУ - реконфигурируемое вычислительное устройство;
ИП - интерфейсная плата с шиной PCI-Express;
КП - компьютер с шиной PCI-Express на материнской плате;
DS - выходной «прозрачный» порт коммутатора PCI-Express;
US - входной «прозрачный» порт коммутатора PCI-Express;
NT - «непрозрачный» порт коммутатора PCI-Express;
К - количество ведомых ВУ вычислительной системы;
N - количество реконфигурируемых вычислительных устройств в каждом ведомом ВУ;
М - количество вычислительных ПЛИС и вычислительных СБИС в каждом РВУ;
i, j - счетные переменные.
1 - коммутатор EtherNet управления вычислительной системы;
2 - ведущий сервер вычислительной системы;
3 - сетевой интерфейс EtherNet между коммутатором управления EtherNet 1 и ведущим сервером 2;
1
К
4, …, 4 - группа их К ведомых ВУ;
5 - двухпортовая интерфейсная плата;
6 - высокоскоростной последовательный интерфейс PCI-Express между ведущим сервером 2 и ИП 5;
1
К
1
К
7, …, 7 - группа из К сетевых интерфейсов EtherNet между коммутатором управления EtherNet 1 и группой из К ведомых ВУ 4, …, 4;
1
К
8 - компьютер ведомых ВУ 4, …, 4;
1
N
1
N
9, …, 9 - группа из N памятей состояния реконфигурируемых вычислительных устройств 13, …, 13;
10 - высокоскоростной последовательный интерфейс PCI-Express между КП 8 ведомого ВУ и коммутатором 11;
1
К
11 - коммутатор PCI-Express ведомых ВУ 4, …, 4;
1
N
12 - шина управления режимом коммутатора PCI-Express 19 в реконфигурируемых вычислительных устройствах 13, …, 13;
1
N
1
К
13, …, 13 - группа из N реконфигурируемых вычислительных устройств в ведомых ВУ 4, …, 4;
1
M
1
M
14, …, 14 - группа из М шин мониторинга вычислительных СБИС 31, …, 31;
1
M
1
M
15, …, 15 - группа из М индивидуальных блоков мониторинга вычислительных СБИС 31, …, 31;
1
N
1
N
16, …, 16 - группа из N высокоскоростных последовательных интерфейсов PCI-Express между коммутатором PCI-Express 11 и реконфигурируемыми вычислительными устройствами 13, …, 13 ведомых ВУ;
1
N
17 - высокоскоростной последовательный интерфейс PCI-Express между коммутатором PCI-Express 19 и интерфейсной ПЛИС 22 реконфигурируемых вычислительных устройств 13, …, 13;
18 - высокоскоростной последовательный интерфейс PCI-Express между ИП 5 и коммутатором PCI-Express 31;
1
N
1
M
1
N
19 - коммутатор PCI-Express реконфигурируемых вычислительных устройств 13, …, 13; 20, …, 20 - группа из М вычислительных ПЛИС реконфигурируемых вычислительных устройств 13, …, 13;
1
M
1
M
1
N
21, …, 21 - группа из М высокоскоростных последовательных интерфейсов PCI-Express между коммутатором PCI-Express 19 и вычислительными ПЛИС 20, …, 20 в реконфигурируемых вычислительных устройствах 13, …, 13;
1
N
22 - интерфейсная ПЛИС реконфигурируемых вычислительных устройств 13, …, 13;
1
N
23 - блок конфигурирования и мониторинга реконфигурируемых вычислительных устройств 13, …, 13;
1
N
24 - память конфигураций ПЛИС реконфигурируемых вычислительных устройств 13, …, 13;
1
N
25 - общая шина конфигурирования и мониторинга вычислительных ПЛИС реконфигурируемых вычислительных устройств 13, …, 13;
1
M
26, …, 26 - группа из М индивидуальных шин управления мониторингом;
1
M
27 - единый радиатор прямоугольной формы, установленный над вычислительными СБИС 33, …, 33;
1
N
1
N
28, …, 28 - группа из N высокоскоростных последовательных интерфейсов PCI-Express объединения реконфигурируемых вычислительных устройств 13, …, 13;
1
K
1
K
29, …, 29 - K групп из N высокоскоростных последовательных интерфейсов объединения PCI-Express ведомых ВУ 4, …, 4;
1
N
30 - блок управления режимом коммутатора PCI-Express 19 в реконфигурируемых вычислительных устройствах 13, …, 13;
1
N
1
K
31 - коммутатор PCI-Express объединения реконфигурируемых вычислительных устройств 13, …, 13 ведомых вычислительных узлов 4, …, 4 по высокоскоростным последовательным интерфейсам PCI-Express;
1
M
1
M
32, …, 32 - группа из М индивидуальных шин оперативной реконфигурации памятей стартовых конфигураций вычислительных ПЛИС 20, …, 20;
1
M
1
N
33, …, 33 - группа из М вычислительных СБИС реконфигурируемых вычислительных устройств 13, …, 13;
1
M
1
M
1
M
34, …, 34 - группа из М индивидуальных шин обмена данными одноименных вычислительных СБИС 33, …, 33 и вычислительных ПЛИС 20, …, 20;
1
M
1
M
1
N
35, …, 35 - группа из М памятей конфигураций вычислительных ПЛИС 20, …, 20 в реконфигурируемых вычислительных устройствах 13, …, 13;
1
M
1
M
36, …, 36 - группа из М индивидуальных шин реконфигурации вычислительных ПЛИС 20, …, 20.
1
К
1
K
Предлагаемая реконфигурируемая вычислительная система содержит ведущий сервер 2, двухпортовую интерфейсную плату 5, группу из К ведомых ВУ 4, …, 4, коммутатор EtherNet 1 управления вычислительной системы и коммутатор 31 PCI-Express объединения реконфигурируемых вычислительных устройств ведомых вычислительных узлов 4, …, 4.
1
К
1
N
1
N
Каждое из ведомых ВУ 4, …, 4 содержит компьютер ПК 8 с коммутатором PCI-Express 11 и группой из N памятей состояния 9, …, 9 на материнской плате, а также группу из N реконфигурируемых вычислительных устройств 13, …, 13.
1
N
1
M
1
M
1
M
1
M
1
M
1
M
Каждое из N реконфигурируемых вычислительных устройств 13, …, 13 содержит коммутатор PCI-Express 19, группу из М вычислительных ПЛИС 20, …, 20, группу из М вычислительных СБИС 33, …, 33, единый радиатор прямоугольной формы 27, установленный над вычислительными СБИС 33, …, 33, интерфейсную ПЛИС 22, блок конфигурирования и мониторинга 23, блок 30 управления режимом коммутатора PCI-Express 19, память 24 конфигураций ПЛИС, группу из М блоков индивидуального мониторинга и управления 15, …, 15 и группу из М памятей стартовых конфигураций 35, …, 35 вычислительных ПЛИС 20, …, 20.
1
К
1
К
1
К
1
N
1
К
Ведущий сервер 2 предназначен для организации управления потоками задач для ведомых ВУ 4, …, 4 через коммутатор EtherNet 1 управления вычислительной системы по сетевому интерфейсу EtherNet 3, загрузки операционных систем в КП 8 ведомых ВУ 4, …, 4 и организации управления ведомыми ВУ 4, …, 4 при решении трудоемких вычислительных задач, а также для организации мониторинга состояния технических средств вычислительной системы, управления включением и выключением питания КП 8 реконфигурируемых вычислительных устройств 13, …, 13, сбора и анализа телеметрической информации о температурном режиме и режиме питания ведомых ВУ 4, …, 4.
1
К
1
К
1
К
Двухпортовая ИП 5 предназначена для обеспечения взаимодействия ведущего сервера 2 по высокоскоростному последовательному интерфейсу PCI-Express 18 с коммутатором PCI-Express 31, который предназначен для обеспечения взаимодействия как ведущего сервера 2 с КП 8 ведомых ВУ 4, …, 4, так и управления взаимодействием КП 8 ведомых ВУ 4, …, 4 по высокоскоростным последовательным интерфейсам PCI-Express 29, …, 29.
1
К
Ведомые ВУ 4, …, 4 предназначены для высокоскоростной обработки информации и решения трудоемких вычислительных задач.
1
К
1
M
1
N
1
N
1
К
КП 8 ведомых ВУ 4, …, 4 предназначены для управления включением и выключением питания, организации сбора, анализа и записи в соответствующие памяти состояния 9, …, 9 реконфигурируемых вычислительных устройствах 13, …, 13 телеметрической информации о температурном режиме и режиме питания компонент, а также организации управления реконфигурируемыми вычислительными устройствами 13, …, 13 при решении трудоемких вычислительных задач и обеспечения обмена данными между с ведущим сервером 2 как по высокоскоростным последовательным интерфейсам PCI-Express 29, …, 29, так и по сети EtherNet через коммутатор 1.
1
N
1
N
Коммутатор PCI-Express 11 предназначен для обеспечения взаимодействия по высокоскоростным последовательным интерфейсам PCI-Express 16, …, 16 между реконфигурируемыми вычислительными устройствами 13, …, 13 и с КП 8 по высокоскоростному последовательному интерфейсу PCI-Express 10.
1
N
1
К
Реконфигурируемые вычислительные устройства 13, …, 13 ведомых ВУ 4, …, 4 предназначены для непосредственного решения трудоемких задач и обработки больших информационных массивов и потоков, с использованием распараллеливания и конвейеризации вычислительных процессов.
1
N
1
M
1
M
Коммутатор PCI-Express 19 реконфигурируемых вычислительных устройств 13, …, 13 предназначен для организации обмена информацией интерфейсной ПЛИС 22 по высокоскоростному последовательному интерфейсу PCI-Express 17 и вычислительных ПЛИС 20, …, 20 по высокоскоростным последовательным интерфейсам PCI-Express 21, …, 21 между собой и по высокоскоростному последовательному интерфейсу PCI-Express 16 через коммутатор PCI-Express 11 с КП 8 ведомых ВУ с ведущим сервером 2.
1
M
1
M
1
M
1
M
1
M
1
M
1
M
1
M
1
M
1
M
Вычислительные ПЛИС 20, …, 20 предназначены для осуществления высокопроизводительной предварительной обработки поступающих входных данных, последующей дообработки результатов работы вычислительных СБИС 33, …, 33, а также обеспечивают обмен данными и результатами с вычислительными СБИС 33, …, 33 по индивидуальным шинам обмена данными 34, …, 34, с индивидуальными блоками мониторинга 15, …, 15, по индивидуальным шинам управления мониторингом 26, …, 26, управляют питанием и настройкой рабочих частот вычислительных СБИС 33, …, 33, осуществляют автореконфигурирование новой программой по индивидуальным шинам реконфигурации 36, …, 36 путем перепрограммирования из собственных памятей конфигураций 35, …, 35. по индивидуальным шинам 32, …, 32.
1
M
1
M
Вычислительные СБИС 33, …, 33 предназначены для прямой схемотехнической реализации критических участков трудоемких фрагментов вычислительных алгоритмов. Вычислительные СБИС 33, …, 33 реализуются как заказные СБИС для выполнения требуемых алгоритмов.
Интерфейсная ПЛИС 22 предназначена для организации обмена информацией с КП 8 по высокоскоростному последовательному интерфейсу PCI-Express 17 для обеспечения взаимодействия с блоками конфигурирования и мониторинга 23 реконфигурируемых устройств и памятью конфигураций ПЛИС 24.
1
M
Память конфигураций ПЛИС 24 предназначена для хранения конфигурации для интерфейсной ПЛИС 22 и стартовой конфигурации для вычислительных ПЛИС 20, …, 20.
Блок 30 управления режимом коммутатора 19 PCI-Express предназначен для управления режимом работы портов NT/DS/US и NT/ US коммутатора PCI-Express 19 по шине 12 управления коммутатора.
1
M
1
M
1
M
Блок конфигурирования и мониторинга реконфигурируемых устройств 23 предназначен для организации конфигурирования вычислительных ПЛИС 20, …, 20 по интерфейсу PCI-Express 17 с использованием ресурсов интерфейсной ПЛИС 22 и из памяти конфигураций ПЛИС 24 при включении питания, осуществления контроля температурного режима и управления режимами питания вычислительных ПЛИС 20, …, 20 по шине конфигурирования и мониторинга 25, с использованием термодатчиков, встроенных в вычислительные ПЛИС 20, …, 20.
1
M
1
M
1
M
Индивидуальные блоки мониторинга и управления 15, …, 15 предназначены для независимого (без использования ресурсов интерфейсной ПЛИС 22) контроля температурного режима, управления питанием и обеспечения требуемыми рабочими частотами вычислительные СБИС 33, …, 33 по индивидуальным шинам мониторинга 14, …, 14
1
M
1
M
1
M
Памяти 35, …, 35 конфигураций вычислительных ПЛИС 20, …, 20 предназначены для хранения индивидуальных стартовых конфигураций вычислительных ПЛИС 20, …, 20, которые в общем случае могут быть как одинаковыми, так и различными.
1
M
1
M
1
M
1
M
Единый радиатор прямоугольной формы 27, установленный над вычислительными СБИС 33, …, 33, предназначен для улучшения теплоотвода кристаллов вычислительных СБИС 33, …, 33 и усреднения рабочей температуры вычислительных СБИС 33, …, 33 с большим и меньшим энергопотреблением, что уменьшает вероятность отказа, обусловленного перегревом кристаллов вычислительных СБИС 33, …, 33.
Предлагаемая реконфигурируемая вычислительная система работает следующим образом.
1
К
1
N
1
M
1
M
1
M
1
K
1
M
1
N
1
К
1
M
1
M
1
M
1
К
Ведущий сервер 2 совместно с коммутаторами EtherNet 1, включаются первыми. После первичной загрузки операционной системы (ОС) ведущий сервер 2 сначала осуществляет включение питания и загрузку операционных систем в КП 8 ведомых ВУ 4, …, 4 по сети EtherNet, которые в свою очередь осуществляет включение питания реконфигурируемых вычислительных устройств 13, …, 13, и после загрузки интерфейсной ПЛИС 22 и вычислительных ПЛИС 20, …, 20 из памяти конфигурации ПЛИС 24, осуществляют настройку порогов срабатывания температурной защиты вычислительных ПЛИС 20, …, 20 и вычислительных СБИС 33, …, 33 и режима работы коммутатора PCI-Express 19 и перезагрузку ОС КП 8 ведомых ВУ 4, …, 4. После перезагрузки ОС в КП 8, которая может осуществляться в общем случае с автономных дисков или по сети EtherNet, ведущий сервер 2 также перезагружается и запускает программы, осуществляющие независимое переконфигурирование вычислительных ПЛИС 20, …, 20 реконфигурируемых вычислительных устройств 13, …, 13 в ведомых ВУ 4, …, 4, в соответствии с текущими требованиями к архитектуре реконфигурируемой вычислительной системы. Далее осуществляется проверка напряжений питания интерфейсной ПЛИС 22, вычислительных ПЛИС 20, …, 20 и вычислительных СБИС 33, …, 33, а также наличия связей всех вычислительных ПЛИС 20, …, 20 с коммутаторами PCI-Express ведомых ВУ 4, …, 4 по интерфейсам PCI-Express.
1
M
1
M
1
M
Так как при стартовом конфигурировании вычислительных ПЛИС 20, …, 20 они инициализируются как агенты сети PCI-Express, в формате, заведомо перекрывающем потребности пользователей в ресурсах (за исключением отдельных, единичных случаев), и распределяются в памяти КП 8 на этапе их загрузки, то после переконфигурирования вычислительных ПЛИС 20, …, 20 рабочими программами перезагрузки ОС ведомых ВУ, как правило, не требуется. Вычислительные ПЛИС 20, …, 20 инициализируются как агенты сети PCI-Express и распределяются в трех областях памяти КП 8 по одному мегабайту каждый.
Одна из областей (BAR2) предназначена для взаимодействия КП 8 ведомого ВУ 4 с регистрами управления и состояния, в том числе с регистрами управления каналом прямого доступа в память (DMA), который имеется в каждой из вычислительных ПЛИС 20 как агентов сети PCI-Express.
Другая область (BAR1) предназначена для обмена данными с процессором КП 8 ведомого ВУ 4 по внутренним интерфейсам вычислительных ПЛИС 20. К ним относятся интерфейсы работы через внутренние памяти ПЛИС произвольного доступа (BRAM) и последовательного доступа (FIFO), а также прямой командный интерфейс работы с аппаратными устройствами пользователей.
Третья область (BAR0) предназначена для обмена данными между агентами сети PCI-Express, находящимися в одном и том же адресном пространстве, т.е. между вычислительными ПЛИС 20, которые расположены внутри одного ведомого ВУ 4. Обмен между вычислительными ПЛИС 20 поддерживается на программно-аппаратном уровне.
1
M
При использовании обмена данными между вычислительными ПЛИС 20 в пределах одного ведомого ВУ 4 для всех реконфигурируемого вычислительного устройства 13 в режиме передачи данных по интерфейсам PCI-Express можно получить объединение всех вычислительных ПЛИС 20, …, 20 в единое вычислительное поле ВУ 4.
При использовании обмена данными между вычислительными ПЛИС 20 различных ВУ 4 по интерфейсам PCI-Express 28 через группы портов NT/DS/US коммутаторов 19 и портов DS 29 коммутатора 31 возможно получить объединение всех вычислительных ПЛИС 20 в единое вычислительное поле в пределах вычислительной системы в целом. Обмен данными между вычислительными ПЛИС 20, находящимися в различных ВУ 4, осуществляется через NT порты, фактически являющимися «непрозрачными» мостами, разделяющими адресные пространства вычислительных узлов 4, и позволяющие вычислительным ПЛИС 20 взаимодействовать через установленные адресные окна. Для организации связи между ВУ достаточно задействовать один из N портов 28 вычислительных устройств 13.
С целью перераспределения ресурса вычислительных ПЛИС 20 между различными ВУ 4, на этапе настройки порогов срабатывания температурной защиты и режима работы коммутатора PCI-Express 19, настройки портов NT/US коммутатора 19, осуществляется подключение вычислительных ПЛИС 20 к КП 8 ВУ 4 со стороны порта US, тогда как с помощью порта NT осуществляется разделение адресных пространств ВУ 4 в памяти ведущего сервера 2.
При решении трудоемких задач и обработки больших информационных массивов и потоков, с использованием распараллеливания и конвейеризации вычислительных процессов, для ускорения вычислений осуществляется декомпозиция вычислительных процессов на функциональные фрагменты, исполняемые универсальными и специализированными устройствами, которые объединяются в определенные конфигурации, изменяемые динамически или статически. При этом на универсальные устройства возлагаются задачи выполнения не трудоемких алгоритмов, а функции предварительной обработки и подготовки данных для трудоемких алгоритмов и обмен данными и результатами с внешними устройствами. Архитектура специализированных устройств адаптируется к особенностям исполняемых вычислительных процессов.
В предлагаемой вычислительной системе вычислительные ПЛИС 20 выполняют не только функции универсальных устройств по предварительной обработке и обмену данными, а также сервисные функции по контролю и управлению конфигурированием, питанием и настройке рабочих частот вычислительных СБИС 33, обеспечивая, таким образом, независимое функционирование вычислительных СБИС 33 как внутри реконфигурируемых вычислительных устройств ведомых ВУ 4, так и вычислительной системы в целом. При этом функции специализированных устройств выполняют вычислительные СБИС 33, которые реализуются на заказных СБИС и предназначены для прямой схемотехнической реализации конкретных критических фрагментов алгоритмов, которые могут присутствовать в различных вычислительных задачах. Причем у заказных СБИС в сравнении с универсальными ПЛИС снижены накладные расходы: на организацию соединений между элементами, которые состоят из совокупности сегментов трассировочных каналов, соединяемых друг с другом матрицами программируемых переключателей (ключей), на долю которых приходится до 90% площади кристалла, а также увеличенной задержкой при передачи данных между элементами, на долю которых приходится до 70% от времени выполнения операций, и избыточность на реализацию схем за счет высокого уровня универсализации.
Система мониторинга состояния компонент системы позволяет не только осуществлять непрерывный независимый контроль состояния основных параметров вычислительной системы (напряжение питания, текущие температуры вычислительных ПЛИС 20 и вычислительных СБИС 33), а также своевременно отключать питание от перегревающихся вычислительных ПЛИС 20 и вычислительных СБИС 33, с целью уменьшения риска их безвозвратного выхода из строя.
1
M
1
M
1
M
Предлагаемая реконфигурируемая вычислительная система обеспечивает многопользовательский и многозадачный режим работы с минимальной единицей ресурса для пользователя один вычислительный ПЛИС 20 с соответствующим вычислительным СБИС 33, так как все вычислительные ПЛИС 20, …, 20 имеют независимые интерфейсы взаимодействия с ПК 8 и могут независимо конфигурироваться различными задачами, используя соответствующие памяти конфигураций 35, …, 35 одноименных вычислительных ПЛИС 20, …, 20.
В предлагаемой реконфигурируемой вычислительной системе при распределении выполняемых задач на всем поле вычислительных ПЛИС 20 и СБИС 33 осуществляется распределение задач с интенсивным обменом данными по портам NT/US и с высоким энергопотреблением, совместно с задачами не требующими интенсивного обмена или высокого энергопотребления, что достигается за счет реализации в предлагаемом вычислительном модуле независимой реконфигурации соответствующих рабочих ПЛИС 20 из одноименных индивидуальных памятей стартовых конфигураций 35, а также раздельной индивидуальной настройки рабочих частот и раздельным индивидуальным управлением питания для каждой вычислительной ПЛИС 20 с соответствующим одноименным вычислительным СБИС 33, а также индивидуальным мониторингом для каждой из вычислительных ПЛИС 20 со СБИС 33.
Предлагаемая реконфигурируемая вычислительная система может быть реализована на следующих элементах:
В качестве ведущего сервера 2 может быть использован сервер фирмы Kraftway на базе платформы ED25: процессор Intel(R) Xeon(R) E2620V4 2.10 GHz 8 cores; оперативная память 64 Gb; жесткий диск 1 Tb; коммутатор 1 как GigabitEthernet; интерфейсная плата 5 ведущего сервера - АВЕ-2010 на базе микросхемы коммутатора РЕХ8619 фирмы PLX Technology.
Ведомые ВУ 4: процессор Intel(R) Xeon(R) E2620V4 2.10 GHz 8 cores; оперативная память 64 Gb; жесткий диск 1 Tb; восемь реконфигурируемых вычислительных устройств 13 содержащих по четыре реконфигурируемых вычислительных ПЛИС 20 и четыре вычислительных СБИС 33 в каждом.
Реконфигурируемые вычислительные устройства 13: интерфейсная ПЛИС 22 и реконфигурируемые вычислительные ПЛИС 20 - на микросхемах фирмы Xilinx типа XC7A75T-FGG484; коммутатор PCI-Express 19 - на микросхеме коммутатора РЕХ8732 фирмы PLX Technology; блок конфигурирования и мониторинга 23 - на микросхемах CPLD ХС2С64А, МАХ6656, TMP461AIRUNT; индивидуальные блоки управления и мониторинга 38 - на микросхемах МАХ1239 и si570, память стартовых конфигураций 24 и памяти конфигураций 35 - на микросхемах SPI-памяти М25Р64.
Таким образом, в предлагаемой реконфигурируемой вычислительной системе, вычисления на СБИС выполняются на более высоких частотах, индивидуально настраиваемых для каждой СБИС, следовательно, в сравнении с прототипом, данная система обладает более высокими быстродействием, вычислительной мощностью и меньшим удельным энергопотреблением за счет использования вычислительных СБИС для прямой схемотехнической реализации критических участков трудоемких фрагментов вычислительных алгоритмов, которые обладают лучшими частотными характеристиками и имеют меньший процент накладных расходов на реализацию алгоритмов, по отношению к ПЛИС. Кроме того, за счет использования единых радиаторов и перераспределения вычислительных ресурсов системы между задачами с высоким и невысоким энергопотреблением, уменьшается средняя рабочая температура вычислительных СБИС и вероятность их перегрева, а за счет перераспределения вычислительных ресурсов системы между задачами с высокой и невысокой интенсивностью обмена, уменьшаются очереди на обслуживание в системе, тем самым повышается средняя скорость обмена данными вычислительных ПЛИС по внешним портам.
Вышеизложенные сведения позволяют сделать вывод, что предлагаемая реконфигурируемая вычислительная система решает поставленную задачу и соответствует заявляемому техническому результату - обладает большей вычислительной мощностью и меньшим удельным энергопотреблением.