ВЫЧИСЛИТЕЛЬНЫЙ МОДУЛЬ

Полезная модель относится к области вычислительной техники, в частности, к вычислительным устройствам с перестраиваемой архитектурой, использующим программируемые логические интегральные схемы (ПЛИС), и может быть использована в реконфигурируемых вычислительных блоках многопроцессорных вычислительных систем, предназначенных для решения трудоемких задач и обработки больших информационных массивов и потоков, с использованием распараллеливания и конвейеризации вычислительных процессов.
Известен вычислительный модуль (RU №137137 U1, МПК G06F 15/16, заявлено 07.10.2013, опубликовано 21.01.2014, БИ №3), содержащий два внешних порта блока для обмена информацией, коммутатор PCI-Express, интерфейсную и N вычислительных ПЛИС, каждая из которых содержит высокоскоростной последовательный интерфейс PCI-Express, причем порты коммутатора PCI-Express соединены с внешними портами модуля и с интерфейсами PCI-Express интерфейсной ПЛИС и N вычислительных ПЛИС, объединенных кольцевым высокоскоростным последовательным каналом обмена информацией между интерфейсной ПЛИС и N вычислительными ПЛИС, организованным на базе двух дополнительных независимых высокоскоростных последовательных портов обмена информацией, введенных у интерфейсной ПЛИС и каждой из N вычислительных ПЛИС.
Недостатком данного модуля является малоэффективная система конфигурирования ПЛИС, и недостаточно высокая надежность работы модуля.
Причинами, препятствующими достижению технического результата, является отсутствие систем стартового конфигурирования, независимого оперативного реконфигурирования вычислительных ПЛИС, и мобильного, в зависимости от выполняемой задачи, реконфигурирования интерфейсной ПЛИС, а также отсутствие системы контроля и управления температурным режимом работы вычислительных ПЛИС.
Наиболее близким устройством того же назначения, к заявленной полезной модели, по совокупности признаков является, принятый за прототип вычислительный модуль с автореконфигурацией (RU №156777 U1, МПК G06F 15/16, заявлено 10.04.2015, опубликовано 20.11.2015, БИ №32), содержащий два внешних порта для обмена информацией, коммутатор PCI-Express, интерфейсную и восемь вычислительных ПЛИС, каждая из которых содержит высокоскоростной последовательный интерфейс PCI-Express, причем порты коммутатора PCI-Express соединены с внешними портами модуля и с интерфейсами PCI-Express интерфейсной ПЛИС и восемью вычислительными ПЛИС, объединенных кольцевым высокоскоростным последовательным каналом обмена информацией между интерфейсной ПЛИС и восемью вычислительными ПЛИС, организованным на базе двух дополнительных независимых высокоскоростных последовательных портов обмена информацией, введенных у интерфейсной ПЛИС и каждой из восьми вычислительных ПЛИС, над восьмью вычислительными ПЛИС установлен единый радиатор прямоугольной формы, блок оперативного конфигурирования ПЛИС, память стартовых конфигураций вычислительных ПЛИС, сетевой порт контроля и управления Ethernet, буферная память управления, блок контроля и управления питанием и блок мониторинга соединенные двунаправленными шинами с интерфейсной ПЛИС, порт контроля и управления JTAG, память стартовой конфигурации интерфейсной ПЛИС соединенные с блоком оперативного конфигурирования ПЛИС, причем интерфейсная ПЛИС соединена двунаправленной общей шиной с восьмью вычислительными ПЛИС, соединенных двунаправленной шиной мониторинга с блоком мониторинга, блок автореконфигурации и память автореконфигурации, которая соединена с блоком автореконфигурации, соединенным шиной автореконфигурации с вычислительными ПЛИС и общей шиной.
Недостатком данного модуля является неэффективное энергопотребление при решении вычислительными ПЛИС трудоемких фрагментов задач пользователей в больших реконфигурируемых системах, построенных на базе данных модулей за счет высокого энергопотребления на холостом ходу и больших накладных расходах в рабочем режиме.
Причинами, препятствующими достижению технического результата, является отсутствие системы энергосбережения холостого хода и уменьшения потерь мощности в рабочем режиме.
Техническим результатом предлагаемой полезной модели является уменьшение потребляемой мощности за счет организации оперативного управления питанием вычислительных ПЛИС и управления скоростью вращения вентиляторов охлаждения.
Для решения данной задачи в вычислительный модуль, содержащий два внешних порта для обмена информацией, коммутатор PCI-Express, интерфейсную и восемь вычислительных ПЛИС, каждая из которых содержит высокоскоростной последовательный интерфейс PCI-Express, причем порты коммутатора PCI-Express соединены с внешними портами модуля и с интерфейсами PCI-Express интерфейсной ПЛИС и восемью вычислительными ПЛИС, объединенных кольцевым высокоскоростным последовательным каналом обмена информацией между интерфейсной ПЛИС и восемью вычислительными ПЛИС, организованным на базе двух дополнительных независимых высокоскоростных последовательных портов обмена информацией, введенных у интерфейсной ПЛИС и каждой из восьми вычислительных ПЛИС, над восьмью вычислительными ПЛИС установлен единый радиатор прямоугольной формы, блок оперативного конфигурирования ПЛИС, память стартовых конфигураций вычислительных ПЛИС, сетевой порт контроля и управления Ethernet, буферная память управления, блок контроля и управления питанием и блок мониторинга соединенные двунаправленными шинами с интерфейсной ПЛИС, порт контроля и управления JTAG, память стартовой конфигурации интерфейсной ПЛИС соединенные с блоком оперативного конфигурирования ПЛИС, причем интерфейсная ПЛИС соединена двунаправленной общей шиной с восьмью вычислительными ПЛИС, соединенных двунаправленной шиной мониторинга с блоком мониторинга, блок автореконфигурации и память автореконфигурации, которая соединена с блоком автореконфигурации, соединенным шиной автореконфигурации с вычислительными ПЛИС и общей шиной,
дополнительно введены блок питания вычислительных ПЛИС с индивидуальным отключением, соединенный с блоком контроля и управления питанием, и блок управления вентиляторами, соединенный с двунаправленной шиной управления вентиляторами охлаждения ПЛИС и интерфейсной ПЛИС, причем блок питания вычислительных ПЛИС с индивидуальным отключением и блок управления вентиляторами соединены с внешними входами напряжения питания вычислительного модуля, а выходы блока питания вычислительных ПЛИС соединены с входами напряжения питания вычислительных ПЛИС.
На фиг. 1 приведена функциональная схема предлагаемого вычислительного модуля.
На фиг. 1 приняты следующие обозначения:
1 - коммутатор PCI-Express;
2 - интерфейсная ПЛИС;
1
2
8
3, 3, …, 3 - восемь вычислительных ПЛИС;
4 - высокоскоростной входной порт последовательного интерфейса PCI-Express 4;
5 - высокоскоростной последовательный интерфейс PCI-Express между коммутатором PCI-Express 1;
1
2
8
1
2
8
6, 6, …, 6 - группа из восьми высокоскоростных последовательных интерфейсов PCI-Express между коммутатором PCI-Express 1 и вычислительными ПЛИС 3, 3, …, 3;
1
2
8
7 - кольцевой высокоскоростной последовательный канал обмена информацией между интерфейсной ПЛИС и вычислительными ПЛИС 3, 3, …, 3;
8 - высокоскоростной выходной порт последовательного интерфейса PCI-Express;
9 - блок оперативного конфигурирования ПЛИС;
10 - память стартовых конфигураций вычислительных ПЛИС;
11 - порт контроля и управления JTAG;
12 - сетевой порт контроля и управления Ethernet;
13 - буферная память управления;
14 - общая шина;
15 - блок контроля и управления питанием;
16 - память стартовой конфигурации интерфейсной ПЛИС;
17 - блок мониторинга;
18 - шина мониторинга;
19 - блок автореконфигурации;
20 - шина автореконфигурации;
21 - память автореконфигурации.
1
2
8
22 - единый радиатор прямоугольной формы, установленный над вычислительными ПЛИС 3, 3, …, 3;
23 - блок питания вычислительных ПЛИС с индивидуальным отключением;
24 - блок управления вентиляторами;
25 - шина управления вентиляторами охлаждения ПЛИС;
1
2
8
U1…U8 - выходы питания вычислительных ПЛИС 3, 3, …, 3.
1
2
8
1
2
8
1
2
8
1
2
8
1
2
8
Коммутатор PCI-Express 1 предназначен для организации обмена информацией с интерфейсной ПЛИС 2 и вычислительными ПЛИС 3, 3, …, 3 по входному порту 4, подключения дополнительного оборудования по выходному порту 8 и организации взаимодействия вычислительных ПЛИС 3, 3,..., 3 между собой по интерфейсам PCI-Express 6, 6, …, 6. Коммутатор PCI-Express 1 содержит 11 высокоскоростных портов, которые соединены с входным портом PCI-Express 4, с интерфейсной ПЛИС 2 по интерфейсу PCI-Express 5, с восьмью вычислительными ПЛИС 3, 3, …, 3 по восьми интерфейсам PCI-Express 6, 6, …, 6 и выходным портом PCI-Express 8.
1
2
8
Вычислительные ПЛИС 3, 3, …, 3 предназначены для аппаратной реализации трудоемких алгоритмов вычислительных задач и осуществляют высокопроизводительную обработку поступающих входных данных.
1
2
8
Интерфейсная ПЛИС 2 предназначена для организации обмена информацией восьми вычислительных ПЛИС 3, 3, …, 3 по кольцевому высокоскоростному последовательному каналу 7 и входному порту PCI-Express 4 посредством ресурсов высокоскоростного последовательного интерфейса PCI-Express 5.
1
2
8
1
2
8
Блок оперативного конфигурирования ПЛИС 9 предназначен для организации конфигурирования восьми вычислительных ПЛИС 3, 3, …, 3 по порту JTAG 11 сетевому порту Ethernet 12, интерфейсу PCI-Express 5 и из памяти стартовых конфигураций 10, предназначенной для хранения начальной конфигурации для восьми вычислительных ПЛИС 3, 3, …, 3 а также конфигурирования интерфейсной ПЛИС 2 порту JTAG 11 и из памяти стартовой конфигурации 16, предназначенной для хранения начальной конфигурации для интерфейсной ПЛИС 2.
1
2
8
Порт контроля и управления JTAG 11 предназначен для организации загрузки вычислительных ПЛИС 3, 3, …, 3 и интерфейсной ПЛИС 2 средствами САПР от управляющего компьютера.
Сетевой порт контроля и управления Ethernet 12 предназначен для обеспечения взаимодействия управляющего компьютера с интерфейсной ПЛИС 2.
1
2
8
1
2
8
Буферная память управления 13 предназначена для хранения текущих конфигураций, предназначенных для записи в вычислительные ПЛИС 3, 3, …, 3. По общей шине 14 выполняется управление конфигурированием вычислительных ПЛИС 3, 3, …, 3.
1
2
8
Блок контроля и управления питанием 15 предназначен для контроля напряжений и управления электропитанием вычислительных ПЛИС 3, 3, …, 3.
1
2
8
1
2
8
Блок мониторинга 17 предназначен для контроля и управления температурным режимом восьми вычислительных ПЛИС 3, 3, …, 3 по шине мониторинга 18, с использованием термодатчиков, встроенных в вычислительные ПЛИС 3, 3, …, 3.
1
2
8
Блок автореконфигурации 19 предназначен для организации автореконфигурирования вычислительных ПЛИС 3, 3, …, 3 без использования ресурсов системной ПЛИС по шине автореконфигурации 20.
1
2
8
Память автореконфигурации 21 предназначена для хранения начальной конфигурации вычислительных ПЛИС 3, 3, …, 3 использующей принцип частичной конфигурации, поддерживающей режим автореконфигурации и интерфейс пользователей вычислительного ресурса.
1
2
8
Единый радиатор прямоугольной формы 22 предназначен для охлаждения вычислительных ПЛИС 3, 3, …, 3.
1
2
8
Блок питания вычислительных ПЛИС с индивидуальным отключением 23 предназначен для формирования необходимых номиналов напряжений для электропитания вычислительных ПЛИС 3, 3, …, 3.
Блок управления вентиляторами 24 предназначен для управления скоростью вращения вентиляторов в зависимости от текущей температуры вычислительных ПЛИС с целью минимизации электроэнергетических потерь.
Шина управления вентиляторами охлаждения ПЛИС 25 предназначена для информационного обмена с внешним модулем управления скоростью вращения вентиляторов.
Предлагаемый вычислительный модуль работает следующим образом.
1
2
8
1
2
8
1
2
8
1
2
8
После включения питания блок оперативного конфигурирования ПЛИС 9 производит стартовую загрузку интерфейсной ПЛИС 2 конфигурационной последовательностью, хранящейся в памяти стартовых конфигураций интерфейсной ПЛИС 16. Затем интерфейсная ПЛИС 2 осуществляет конфигурирование вычислительных ПЛИС 3, 3, …, 3 по общей шине управления конфигурированием 14. При этом конфигурирование вычислительных ПЛИС 3, 3, …, 3, в зависимости от заданного режима, производится или из памяти стартовых конфигураций 10, или из памяти автореконфигурации 21. В памяти автореконфигурации 21 размещается программа для частичной конфигурации, которая позволяет осуществлять автоконфигурирование вычислительных ПЛИС 3, 3, …, 3, посредством блока автореконфигурации 19 используя их собственные ресурсы. Распределение всех устройств PCI-Express происходит в памяти управляющего компьютера, к которому вычислительный модуль подключается по высокоскоростному входному порту последовательного интерфейса PCI-Express 4, одновременно при загрузке операционной системы. Это позволяет в дальнейшем избежать ее перезагрузки при переконфигурировании вычислительных ПЛИС 3, 3, …, 3 и увеличивает время их полезной работы.
1
2
8
Загрузка конфигурационных последовательностей в вычислительные ПЛИС 3, 3, …, 3 может также производиться по высокоскоростному входному последовательному интерфейсу PCI-Express 4, по сетевому порту контроля и управления Ethernet 12 или по порту контроля и управления JTAG 11.
1
2
8
1
2
8
1
2
8
После инициализации портов коммутатора PCI-Express 1, высокоскоростного последовательного интерфейса PCI-Express 5, интерфейсной ПЛИС 2, переконфигурирования вычислительных ПЛИС 3, 3, …, 3 рабочими проектами, в зависимости от алгоритмов выполняемых задач, осуществляется высокоскоростной обмен информацией по входному порту 4 и портом PCI-Express 5 интерфейсной ПЛИС 2 и портами 6, 6, …, 6 вычислительных ПЛИС 3, 3, …, 3, а также выходным портом 8. Высокоскоростной выходной порт 8 последовательного интерфейса PCI-Express обеспечивает возможность расширения вычислительного ресурса, например, за счет подключения аналогичных реконфигурируемых вычислительных модулей.
1
2
8
Для ускорения и повышения стабильности процесса переконфигурирования вычислительных ПЛИС 3, 3, …, 3 применяется буферная память 13, в которую заранее, в процессе выполнения текущей задачи, могут быть загружены последующие конфигурационные последовательности.
Предлагаемый вычислительный модуль поддерживает следующие системы обмена данными:
1
2
8
max
in_max
in_max
1
2
8
- обмен индивидуальными данными по входному порту 4 непосредственно с вычислительными ПЛИС 3, 3, …, 3 через коммутатор PCI-Express 1 с максимальной скоростью обмена V1=0.5*V/8, где V - максимальная скорость обмена внешнего порта 4, а коэффициент 0.5 соответствует накладным расходам на арбитраж между восьмью вычислительными ПЛИС 3, 3, …, 3;
1
2
8
max
in_max
in_max
- обмен индивидуальными данными по входному порту 4 с вычислительными ПЛИС 3, 3, …, 3  через коммутатор PCI-Express 1, интерфейсную ПЛИС 2 и кольцевой высокоскоростной последовательный канал обмена информацией 7 с максимальной скоростью обмена V2=1.0*V/8 при условии, что скорость передачи информации по кольцевому каналу 7 не меньше V, где коэффициент 1.0 соответствует отсутствию накладных расходов на арбитраж, так как взаимодействие осуществляется посредством интерфейсной ПЛИС 2;
1
2
8
max
in_max
- передача в вычислительные ПЛИС 3, 3, …, 3  одного и того же входного потока информации по входному порту 4 через коммутатор PCI-Express 1, интерфейсную ПЛИС 2 и кольцевой высокоскоростной последовательный канал обмена информацией 7 с максимальной скоростью потока V5=1.0*V*(1+1/8)/2, при условии равенства потоков входной и выходной информации вычислительных ПЛИС.
1
2
8
in_max
in_max
1
2
8
В соответствии с этим ожидаемая скорость обмена информацией восьми вычислительных ПЛИС 3, 3, …, 3 через входной порт 4 будет находиться в диапазоне от (0.5*V/8) до (1.0*V*(1+1/8)/2, в зависимости от текущего соотношения различных способов обмена восьми вычислительных ПЛИС 3, 3, …, 3 по входному порту.
1
2
8
1
2
8
1
2
8
В предлагаемом вычислительном модуле предусмотрена возможность установки индивидуальных значений температурных порогов для вычислительных ПЛИС 3, 3, …, 3, при достижении которых срабатывает система защиты соответствующих ПЛИС от перегрева. При выполнении задач вычислительный модуль осуществляет непрерывный контроль температурного режима с возможностью индивидуального (независимого) отключения рабочего напряжения от вычислительных ПЛИС 3, 3, …, 3 на основании данных, получаемых с блока мониторинга 17 по шине 18, к которой подключены все вычислительные ПЛИС 3, 3, …, 3.
1
2
8
Единый радиатор прямоугольной формы 22, установленный над вычислительными ПЛИС 3, 3, …, 3, обеспечивает их эффективное охлаждение за счет большой площади поверхностей ребер, которые обдуваются вентиляторами системы охлаждения, а также за счет применения тепловых трубок, впаянных вдоль продольной оси радиатора. Применение тепловых трубок позволяет устранить разницу температур между ПЛИС, которые расположены в непосредственной близости от вентиляторов системы охлаждения, и на удалении от них, путем перераспределения тепла между ними.
1
2
8
1
2
8
1
2
8
1
2
8
Управление скоростью вращения вентиляторов системы охлаждения в предлагаемом вычислительном модуле осуществляется блоком управления вентиляторами 24, в котором по заданному алгоритму производится анализ текущих температур вычислительных ПЛИС 3, 3, …, 3 с дальнейшим формированием управляющих сигналов для ШИМ-контроллеров, установленных на внешнем модуле управления скоростью вращения вентиляторов, подключаемом к вычислительному модулю через шину управления вентиляторами охлаждения ПЛИС 25. Снижение энергопотребления вычислительной системы, построенной на базе предлагаемых вычислительных модулей, осуществляется за счет уменьшения скоростей вращения соответствующих вентиляторов системы охлаждения (и соответственно потребляемой ими мощности) до заранее запрограммированных минимальных значений в режимах работы, когда температуры вычислительных ПЛИС 3, 3, …, 3 не превышают установленного пользователем значения температурного порога. При обработке информации на вычислительных ПЛИС 3, 3, …, 3 в момент, когда температура хотя бы одной из них превысит значение установленного пользователем порога, блок управления вентиляторами 24 сформирует и отправит через шину управления вентиляторами охлаждения ПЛИС 25 соответствующие управляющие сигналы, которые переведут соответствующие вентиляторы системы охлаждения в режим максимальных оборотов. При последующем понижении температур вычислительных ПЛИС 3, 3, …, 3 ниже значения установленного пользователем порога, скорость вращения вентиляторов автоматически возвращается к своим заданным стартовым значениям.
1
2
8
В таблице 1 представлены полученные экспериментальные значения мощности, потребляемой вычислительным блоком, построенным на базе двух вычислительных модулей с восемью вычислительными ПЛИС 3, 3, …, 3  Xilinx Kintex-7 XC7K410, при использовании функции управления скоростью вращения вентиляторов и без нее, для выполнения трех тестовых задач.
1
2
8
Для снижения энергопотребления в режиме, когда обработка информации на вычислительных ПЛИС 3, 3, …, 3 не осуществляется, в предлагаемом вычислительном модуле реализованы следующие функции:
1
2
8
- переконфигурирование вычислительных ПЛИС 3, 3, …, 3 стартовыми энергосберегающими конфигурационными последовательностями из памяти стартовых конфигураций 10;
1
2
8
- сброс загруженных в вычислительные ПЛИС 3, 3, …, 3 конфигурационных последовательностей;
1
2
8
- снятие питания с вычислительных ПЛИС 3, 3, …, 3 путем отключения выходов питания вычислительных ПЛИС U1…U8.
1
2
8
В таблице 2 приведены полученные экспериментальные значения потребляемой вычислительным модулем мощности при загруженных в вычислительные ПЛИС 3, 3, …, 3 конфигурационных последовательностях двух тестов, а также при использовании вышеперечисленных энергосберегающих функций. Значения потребляемой мощности приведены для вычислительного модуля на базе восьми вычислительных ПЛИС Xilinx Kintex-7 XC7K410.
1
2
8
Предлагаемый вычислительный модуль может быть выполнен на следующих элементах: коммутатор PCI-Express 1 на базе микросхемы коммутатора PEX8648 фирмы PLX Technology, интерфейсная ПЛИС 2 - микросхеме фирмы Xilinx типа XC6VLX75T-1FFG784C, вычислительные ПЛИС 3, 3, …, 3 - микросхемах фирмы Xilinx типа XC7K410T-1FFG900C, блок оперативного конфигурирования ПЛИС 9 - с использованием CPLD XC2C64A, память стартовых конфигураций вычислительных ПЛИС 10 - с использованием Flash-памяти S29GL512P, порт контроля и управления JTAG 11 - с использованием штатного разъема MOLEX и CPLD XC2C64A, сетевой порт контроля и управления Ethernet 12 - на микросхеме DP83865DVH, буферная память управления 13 - DDR3 SDRAM, память стартовой конфигурации интерфейсной ПЛИС 16 - на SPI-памяти M25P64, блок мониторинга 17 - на микросхемах MAX6656.
Таким образом, вышеизложенные сведения позволяют сделать вывод, что предлагаемый вычислительный модуль позволяет осуществлять экономию электроэнергии при использовании его в высокопроизводительных вычислительных системах за счет управления потреблением вычислительных ПЛИС, и управления скоростью вращения вентиляторов.