Описанные правила формирования прямых и обратных фронтов проиллюстрированы на рис. 3 на примере двумерного ОММК.

Рис. 3. Порядок формирования прямых и обратных фронтов
для двумерного ОММК
Пусть для фронта
в текущий момент времени активным будет виртуальный слой
,
. Тогда для фронта
активным считается слой
, если
, и слой
, если
. Для фронта
, таким образом, активным будет слой
при
и слой
при
. Аналогично определяется активность виртуальных слоев и для обратных фронтов. Отметим, что в пределах одного фронта (прямого или обратного) во всех ячейках активен один и тот же виртуальный слой.
Описанный порядок активизации виртуальных слоев иллюстрируется на примере среды синхронизации двумерного ОММК в конфигурации
при
(см. рис. 4). Активные виртуальные ячейки и связи выделены жирными линиями. Из рисунка следует, что в каждой физической ячейке происходит последовательное циклическое переключение виртуальных слоев, причем в пределах одного фронта переключения осуществляются синхронно. В то же время ячейки фронта с меньшим порядковым номером переключаются с запаздыванием относительно текущего фронта, а ячейки фронта с большим порядковым номером, наоборот, – с опережением. Величина запаздывания / опережения (в тактах) пропорциональна разности номеров фронтов. Аналогично происходит активизация виртуальных слоев в сети восстановления.
С учетом особенностей разработанного механизма виртуализации координирующей среды текущее состояние произвольного модуля
по отношению к барьеру
определяется в следующем виде:
(8)
где
– номер активного виртуального слоя для фронта
, содержащего ячейку
;
– номер виртуального слоя, на который назначен барьер
;
отражает состояние ветви
, выполняемой модулем
. Согласно формуле (8)
, если активен виртуальный слой, на который назначен s-й барьер, при этом модуль
уже не выполняет ветвь
либо данный модуль вообще не является участником s-й барьерной группы. Иными словами, состояние ветви
учитывается только при совпадении номеров двух виртуальных слоев – активного для ячейки
и соответствующего барьеру
.
С целью обеспечения согласованной работы ячеек координирующей среды с учетом виртуализации физических слоев разработан соответствующий механизм их тактовой синхронизации, основанный на известном методе тактирования волнами импульсов (DCW-clocking). Опуская формализованное представление указанного механизма, поясним его сущность графической иллюстрацией на примере сети синхронизации двумерного ОММК (рис. 5). Для упрощения на данном рисунке отдельные ячейки отображены квадратами, а связи между ними условно не показаны. Подобный порядок передачи тактовых импульсов ячейкам координирующей среды позволяет организовать высокоскоростное конвейерное переключение виртуальных слоев. При достаточно высокой частоте следования тактовых импульсов и, соответственно, при большом числе волн, покрывающих матрицу ОММК, один и тот же виртуальный слой может быть одновременно активен в ячейках нескольких фронтов.
Доказано, что разработанный метод распределенной барьерной синхронизации, основанный на использовании виртуально-многослойной координирующей среды, инвариантен к конфигурации барьерных групп и в частности, к их мощности и размещению в ОММК, которые существенны для известных аппаратных методов барьерной синхронизации.
В третьем разделе осуществлен синтез структурных и функциональных схем основных блоков, входящих в состав ячейки координирующей среды, рассматриваются особенности ее функционирования во взаимодействии с другими аналогичными ячейками. Проведена оценка аппаратной сложности ячейки и гибкости разработанных аппаратных средств.
Функциональная схема разработанной ячейки изображена на рис. 6, где жирными линиями выделены блоки элементов и шины, латинскими буквами обозначены входы и выходы ячейки. Дополнительно входы и выходы размечены наименованиями переменных и функций, которые на них подаются или с них снимаются. Через
и
на рис. 6 обозначены координатные признаки текущего модуля,
– признак активизации текущего модуля,
и
– волны тактовых импульсов в сетях синхронизации и восстановления соответственно,
и
– номера текущих физического и виртуального слоев соответственно,
– максимальный номер используемого виртуального слоя,
– сигнал системного сброса.
Значения признаков
определяются выражениями:
Назначение элементов, блоков, входов и выходов ячейки, а также особенности ее функционирования в составе координирующей среды ОММК подробно рассмотрены в диссертационной работе.
Аппаратная сложность
разработанной ячейки зависит от числа физических слоев n, глубины их виртуализации p, а также связана с размерностью мультикомпьютера d:
. (9)
Единицей изменения величины
является эквивалентный вентиль (ЭВ) – двухвходовый вентиль, реализующий любую булеву функцию двух переменных из множества {И, ИЛИ, И-НЕ, ИЛИ-НЕ}.
В табл. 1 представлены значения аппаратной сложности E координирующей среды двумерного матричного мультикомпьютера (
), полученные на основе формулы (9):
. Значения выражены в ЭВ и получены в предположении, что
.

Рис. 6. Функциональная схема ячейки многослойной координирующей среды
с виртуализацией физических слоев
Анализ данных, сведенных в табл. 1, показывает, что координирующая среда на основе разработанной ячейки во всех практически значимых случаях реализуется на одной микросхеме. При этом аппаратная сложность отдельной ячейки остается в пределах 30 тысяч ЭВ, что на два-три порядка ниже логической емкости современных микросхем.
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 |


